itmar-block-packages 1.10.1 → 2.0.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/README.md +78 -2
- package/build/cjs/AnimationBlock.js +107 -0
- package/build/cjs/AnimationBlock.js.map +1 -0
- package/build/cjs/BlockEditWrapper.js +20 -0
- package/build/cjs/BlockEditWrapper.js.map +1 -0
- package/build/cjs/BlockPlace.js +509 -0
- package/build/cjs/BlockPlace.js.map +1 -0
- package/build/cjs/BrockInserter.js +204 -0
- package/build/cjs/BrockInserter.js.map +1 -0
- package/build/cjs/DateElm.js +321 -0
- package/build/cjs/DateElm.js.map +1 -0
- package/build/cjs/DraggableBox.js +143 -0
- package/build/cjs/DraggableBox.js.map +1 -0
- package/build/cjs/GridControls.js +421 -0
- package/build/cjs/GridControls.js.map +1 -0
- package/build/cjs/IconSelectControl.js +167 -0
- package/build/cjs/IconSelectControl.js.map +1 -0
- package/build/cjs/JapaneseHolidays.js +99 -0
- package/build/cjs/JapaneseHolidays.js.map +1 -0
- package/build/cjs/MasonryControl.js +124 -0
- package/build/cjs/MasonryControl.js.map +1 -0
- package/build/cjs/PseudoElm.js +66 -0
- package/build/cjs/PseudoElm.js.map +1 -0
- package/build/cjs/ShadowStyle.js +453 -0
- package/build/cjs/ShadowStyle.js.map +1 -0
- package/build/cjs/SwiperControl.js +267 -0
- package/build/cjs/SwiperControl.js.map +1 -0
- package/build/cjs/ToggleElement.js +17 -0
- package/build/cjs/ToggleElement.js.map +1 -0
- package/build/cjs/TypographyControls.js +151 -0
- package/build/cjs/TypographyControls.js.map +1 -0
- package/build/cjs/UpdateAllPostsBlockAttributes.js +137 -0
- package/build/cjs/UpdateAllPostsBlockAttributes.js.map +1 -0
- package/build/cjs/ZipAddress.js +34 -0
- package/build/cjs/ZipAddress.js.map +1 -0
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +117 -0
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
- package/build/cjs/blockStore.js +65 -0
- package/build/cjs/blockStore.js.map +1 -0
- package/build/cjs/cssPropertes.js +157 -0
- package/build/cjs/cssPropertes.js.map +1 -0
- package/build/cjs/customFooks.js +300 -0
- package/build/cjs/customFooks.js.map +1 -0
- package/build/cjs/formatCreate.js +160 -0
- package/build/cjs/formatCreate.js.map +1 -0
- package/build/cjs/hslToRgb.js +133 -0
- package/build/cjs/hslToRgb.js.map +1 -0
- package/build/cjs/index.js +115 -0
- package/build/cjs/index.js.map +1 -0
- package/build/cjs/mediaUpload.js +182 -0
- package/build/cjs/mediaUpload.js.map +1 -0
- package/build/cjs/node_modules/nanoid/index.js +30 -0
- package/build/cjs/node_modules/nanoid/index.js.map +1 -0
- package/build/cjs/node_modules/nanoid/url-alphabet/index.js +7 -0
- package/build/cjs/node_modules/nanoid/url-alphabet/index.js.map +1 -0
- package/build/cjs/shopfiApi.js +188 -0
- package/build/cjs/shopfiApi.js.map +1 -0
- package/build/cjs/validationCheck.js +15 -0
- package/build/cjs/validationCheck.js.map +1 -0
- package/build/cjs/wordpressApi.js +631 -0
- package/build/cjs/wordpressApi.js.map +1 -0
- package/build/esm/AnimationBlock.js +102 -0
- package/build/esm/AnimationBlock.js.map +1 -0
- package/build/esm/BlockEditWrapper.js +16 -0
- package/build/esm/BlockEditWrapper.js.map +1 -0
- package/build/esm/BlockPlace.js +503 -0
- package/build/esm/BlockPlace.js.map +1 -0
- package/build/esm/BrockInserter.js +202 -0
- package/build/esm/BrockInserter.js.map +1 -0
- package/build/esm/DateElm.js +309 -0
- package/build/esm/DateElm.js.map +1 -0
- package/build/esm/DraggableBox.js +138 -0
- package/build/esm/DraggableBox.js.map +1 -0
- package/build/esm/GridControls.js +417 -0
- package/build/esm/GridControls.js.map +1 -0
- package/build/esm/IconSelectControl.js +163 -0
- package/build/esm/IconSelectControl.js.map +1 -0
- package/build/esm/JapaneseHolidays.js +97 -0
- package/build/esm/JapaneseHolidays.js.map +1 -0
- package/{src → build/esm}/MasonryControl.js +108 -113
- package/build/esm/MasonryControl.js.map +1 -0
- package/build/esm/PseudoElm.js +61 -0
- package/build/esm/PseudoElm.js.map +1 -0
- package/build/esm/ShadowStyle.js +448 -0
- package/build/esm/ShadowStyle.js.map +1 -0
- package/{src → build/esm}/SwiperControl.js +265 -265
- package/build/esm/SwiperControl.js.map +1 -0
- package/build/esm/ToggleElement.js +13 -0
- package/build/esm/ToggleElement.js.map +1 -0
- package/build/esm/TypographyControls.js +147 -0
- package/build/esm/TypographyControls.js.map +1 -0
- package/build/esm/UpdateAllPostsBlockAttributes.js +133 -0
- package/build/esm/UpdateAllPostsBlockAttributes.js.map +1 -0
- package/build/esm/ZipAddress.js +32 -0
- package/build/esm/ZipAddress.js.map +1 -0
- package/build/esm/_virtual/_rollupPluginBabelHelpers.js +107 -0
- package/build/esm/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
- package/build/esm/blockStore.js +60 -0
- package/build/esm/blockStore.js.map +1 -0
- package/build/esm/cssPropertes.js +144 -0
- package/build/esm/cssPropertes.js.map +1 -0
- package/{src → build/esm}/customFooks.js +290 -337
- package/build/esm/customFooks.js.map +1 -0
- package/build/esm/formatCreate.js +157 -0
- package/build/esm/formatCreate.js.map +1 -0
- package/build/esm/hslToRgb.js +129 -0
- package/build/esm/hslToRgb.js.map +1 -0
- package/build/esm/index.js +27 -0
- package/build/esm/index.js.map +1 -0
- package/build/esm/mediaUpload.js +176 -0
- package/build/esm/mediaUpload.js.map +1 -0
- package/build/esm/node_modules/nanoid/index.js +27 -0
- package/build/esm/node_modules/nanoid/index.js.map +1 -0
- package/build/esm/node_modules/nanoid/url-alphabet/index.js +5 -0
- package/build/esm/node_modules/nanoid/url-alphabet/index.js.map +1 -0
- package/build/esm/shopfiApi.js +184 -0
- package/build/esm/shopfiApi.js.map +1 -0
- package/build/esm/validationCheck.js +13 -0
- package/build/esm/validationCheck.js.map +1 -0
- package/build/esm/wordpressApi.js +618 -0
- package/build/esm/wordpressApi.js.map +1 -0
- package/package.json +22 -6
- package/build/index.asset.php +0 -1
- package/build/index.js +0 -25
- package/css/editor.css +0 -23
- package/css/editor.css.map +0 -1
- package/img/animation.png +0 -0
- package/img/blockplace.png +0 -0
- package/img/grid.png +0 -0
- package/img/iconControl.png +0 -0
- package/img/pseudo.png +0 -0
- package/img/shadow.png +0 -0
- package/img/typography.png +0 -0
- package/src/AnimationBlock.js +0 -112
- package/src/BlockEditWrapper.js +0 -11
- package/src/BlockPlace.js +0 -904
- package/src/BrockInserter.js +0 -247
- package/src/DateElm.js +0 -354
- package/src/DraggableBox.js +0 -143
- package/src/GridControls.js +0 -462
- package/src/IconSelectControl.js +0 -186
- package/src/PseudoElm.js +0 -54
- package/src/ShadowStyle.js +0 -520
- package/src/ToggleElement.js +0 -18
- package/src/TypographyControls.js +0 -145
- package/src/UpdateAllPostsBlockAttributes.js +0 -127
- package/src/ZipAddress.js +0 -35
- package/src/blockStore.js +0 -75
- package/src/cssPropertes.js +0 -212
- package/src/formatCreate.js +0 -179
- package/src/hslToRgb.js +0 -162
- package/src/index.js +0 -131
- package/src/mediaUpload.js +0 -178
- package/src/shopfiApi.js +0 -187
- package/src/validationCheck.js +0 -10
- package/src/wordpressApi.js +0 -707
- package/webpack.config.js +0 -10
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BlockPlace.js","sources":["../../src/BlockPlace.js"],"sourcesContent":["import { __ } from \"@wordpress/i18n\";\r\nimport { useState, useEffect } from \"@wordpress/element\";\r\n\r\nimport {\r\n Button,\r\n PanelBody,\r\n PanelRow,\r\n __experimentalUnitControl as UnitControl,\r\n ComboboxControl,\r\n Icon,\r\n ToolbarGroup,\r\n ToolbarItem,\r\n RangeControl,\r\n TextControl,\r\n RadioControl,\r\n ToggleControl,\r\n Modal,\r\n} from \"@wordpress/components\";\r\nimport {\r\n group,\r\n stack,\r\n layout,\r\n justifyCenter,\r\n justifyLeft,\r\n justifyRight,\r\n justifySpaceBetween,\r\n justifyStretch,\r\n stretchWide,\r\n positionCenter,\r\n} from \"@wordpress/icons\";\r\nimport GridControls from \"./GridControls\";\r\n\r\n//横並びのアイコン\r\nconst flex = <Icon icon={stack} className=\"rotate-icon\" />;\r\n//上よせアイコン\r\nconst upper = <Icon icon={justifyLeft} className=\"rotate-icon\" />;\r\n//中央よせのアイコン\r\nconst middle = <Icon icon={justifyCenter} className=\"rotate-icon\" />;\r\n//下よせのアイコン\r\nconst lower = <Icon icon={justifyRight} className=\"rotate-icon\" />;\r\n//上下一杯に伸ばすアイコン\r\nconst vert_between = <Icon icon={justifyStretch} className=\"rotate-icon\" />;\r\n//上下均等に伸ばすアイコン\r\nconst vert_around = <Icon icon={justifySpaceBetween} className=\"rotate-icon\" />;\r\n\r\nexport default function BlockPlace(props) {\r\n const { attributes, clientId, blockRef, isMobile, isSubmenu, isParallax } =\r\n props;\r\n const { positionType, isPosCenter, default_val, mobile_val } = attributes;\r\n\r\n //モバイルかデスクトップか\r\n const sel_pos = isMobile ? mobile_val : default_val;\r\n\r\n //配置アイコンの選択\r\n\r\n const start_icon = sel_pos.direction === \"vertical\" ? upper : justifyLeft;\r\n const center_icon = sel_pos.direction === \"vertical\" ? middle : justifyCenter;\r\n const end_icon = sel_pos.direction === \"vertical\" ? lower : justifyRight;\r\n const start_cross = sel_pos.direction === \"vertical\" ? justifyLeft : upper;\r\n const center_cross =\r\n sel_pos.direction === \"vertical\" ? justifyCenter : middle;\r\n const end_cross = sel_pos.direction === \"vertical\" ? justifyRight : lower;\r\n const stretch =\r\n sel_pos.direction === \"vertical\" ? justifyStretch : vert_between;\r\n const between_icon =\r\n sel_pos.direction === \"vertical\" ? vert_between : justifyStretch;\r\n const around_icon =\r\n sel_pos.direction === \"vertical\" ? vert_around : justifySpaceBetween;\r\n //ツールチップの選択\r\n const start_tip =\r\n sel_pos.direction === \"vertical\"\r\n ? __(\"upper alignment\", \"block-collections\")\r\n : __(\"left alignment\", \"block-collections\");\r\n const end_tip =\r\n sel_pos.direction === \"vertical\"\r\n ? __(\"lower alignment\", \"block-collections\")\r\n : __(\"right alignment\", \"block-collections\");\r\n const cross_start_tip =\r\n sel_pos.direction === \"vertical\"\r\n ? __(\"left alignment\", \"block-collections\")\r\n : __(\"upper alignment\", \"block-collections\");\r\n const cross_end_tip =\r\n sel_pos.direction === \"vertical\"\r\n ? __(\"right alignment\", \"block-collections\")\r\n : __(\"lower alignment\", \"block-collections\");\r\n\r\n const [isContainer, setIsContainer] = useState(false);\r\n const [isFlexItem, setIsFlexItem] = useState(false);\r\n const [direction, setDirection] = useState(\"row\");\r\n useEffect(() => {\r\n if (blockRef.current) {\r\n const element = blockRef.current;\r\n const parentElement = element.parentElement;\r\n const grandparentElement = parentElement?.parentElement;\r\n\r\n const computedStyle = getComputedStyle(grandparentElement);\r\n //親要素がFlex又はGridコンテナか\r\n if (\r\n computedStyle.display === \"flex\" ||\r\n computedStyle.display === \"inline-flex\" ||\r\n computedStyle.display === \"grid\" ||\r\n computedStyle.display === \"inline-grid\"\r\n ) {\r\n setIsContainer(true);\r\n }\r\n //flexの時その方向\r\n if (\r\n computedStyle.display === \"flex\" ||\r\n computedStyle.display === \"inline-flex\"\r\n ) {\r\n setIsFlexItem(true);\r\n if (\r\n computedStyle.flexDirection === \"row\" ||\r\n computedStyle.flexDirection === \"row-reverse\"\r\n ) {\r\n setDirection(\"row\");\r\n } else {\r\n setDirection(\"column\");\r\n }\r\n }\r\n }\r\n }, []);\r\n\r\n //GridModalを開く\r\n const [isGridModalOpen, setIsGridModalOpen] = useState(false);\r\n const openGridModal = () => setIsGridModalOpen(true);\r\n const closeGridModal = () => setIsGridModalOpen(false);\r\n\r\n // 翻訳が必要な文字列を直接指定\r\n const blockMaxWidthMobile = __(\r\n \"Block Max Width(Mobile)\",\r\n \"block-collections\"\r\n );\r\n const blockWidthMobile = __(\"Block Width(Mobile)\", \"block-collections\");\r\n const blockMaxWidthDesktop = __(\r\n \"Block Max Width(DeskTop)\",\r\n \"block-collections\"\r\n );\r\n const blockWidthDesktop = __(\"Block Width(DeskTop)\", \"block-collections\");\r\n\r\n // 条件に応じて選択\r\n const blockWidthLabel = isMobile\r\n ? isSubmenu\r\n ? blockWidthMobile\r\n : blockMaxWidthMobile\r\n : isSubmenu\r\n ? blockWidthDesktop\r\n : blockMaxWidthDesktop;\r\n\r\n return (\r\n <>\r\n <PanelBody\r\n title={__(\"Block placement\", \"block-collections\")}\r\n initialOpen={false}\r\n className=\"itmar_group_direction\"\r\n >\r\n {isMobile ? (\r\n <p>{__(\"InnerBlock direction(Mobile)\", \"block-collections\")}</p>\r\n ) : (\r\n <p>{__(\"InnerBlock direction(DeskTop)\", \"block-collections\")}</p>\r\n )}\r\n\r\n <ToolbarGroup>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.direction === \"block\"}\r\n onClick={() => props.onDirectionChange(\"block\")}\r\n icon={group}\r\n label={__(\"block\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.direction === \"vertical\"}\r\n onClick={() => props.onDirectionChange(\"vertical\")}\r\n icon={stack}\r\n label={__(\"virtical\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.direction === \"horizen\"}\r\n onClick={() => props.onDirectionChange(\"horizen\")}\r\n icon={flex}\r\n label={__(\"horizen\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.direction === \"grid\"}\r\n onClick={() => props.onDirectionChange(\"grid\")}\r\n icon={layout}\r\n label={__(\"grid\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n {(sel_pos.direction === \"horizen\" ||\r\n sel_pos.direction === \"vertical\") && (\r\n <PanelRow className=\"position_row\">\r\n <ToggleControl\r\n label={__(\"reverse\", \"block-collections\")}\r\n checked={sel_pos.reverse}\r\n onChange={(checked) => props.onReverseChange(checked)}\r\n />\r\n <ToggleControl\r\n label={__(\"wrap\", \"block-collections\")}\r\n checked={sel_pos.wrap}\r\n onChange={(checked) => props.onWrapChange(checked)}\r\n />\r\n </PanelRow>\r\n )}\r\n </ToolbarGroup>\r\n\r\n {sel_pos.direction !== \"block\" && sel_pos.direction !== \"grid\" && (\r\n <>\r\n {isMobile ? (\r\n <p>{__(\"InnerBlock Main Axis(Mobile)\", \"block-collections\")}</p>\r\n ) : (\r\n <p>{__(\"InnerBlock Main Axis(DeskTop)\", \"block-collections\")}</p>\r\n )}\r\n <ToolbarGroup>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_align === \"flex-start\"}\r\n onClick={() =>\r\n props.onFlexChange(\"flex-start\", \"inner_align\")\r\n } //親コンポーネントに通知\r\n icon={start_icon}\r\n label={start_tip}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_align === \"center\"}\r\n onClick={() => props.onFlexChange(\"center\", \"inner_align\")} //親コンポーネントに通知\r\n icon={center_icon}\r\n label={__(\"center alignment\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_align === \"flex-end\"}\r\n onClick={() =>\r\n props.onFlexChange(\"flex-end\", \"inner_align\")\r\n } //親コンポーネントに通知\r\n icon={end_icon}\r\n label={end_tip}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_align === \"space-between\"}\r\n onClick={() =>\r\n props.onFlexChange(\"space-between\", \"inner_align\")\r\n } //親コンポーネントに通知\r\n icon={between_icon}\r\n label={__(\"stretch\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_align === \"space-around\"}\r\n onClick={() =>\r\n props.onFlexChange(\"space-around\", \"inner_align\")\r\n } //親コンポーネントに通知\r\n icon={around_icon}\r\n label={__(\"around stretch\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n </ToolbarGroup>\r\n </>\r\n )}\r\n\r\n {!isSubmenu &&\r\n (isMobile ? (\r\n <p>{__(\"InnerBlock Cross Axis(Mobile)\", \"block-collections\")}</p>\r\n ) : (\r\n <p>{__(\"InnerBlock Cross Axis(DeskTop)\", \"block-collections\")}</p>\r\n ))}\r\n\r\n {!isSubmenu && (\r\n <ToolbarGroup>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_items === \"flex-start\"}\r\n onClick={() =>\r\n props.onFlexChange(\"flex-start\", \"inner_items\")\r\n } //親コンポーネントに通知\r\n icon={start_cross}\r\n label={cross_start_tip}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_items === \"center\"}\r\n onClick={() => props.onFlexChange(\"center\", \"inner_items\")} //親コンポーネントに通知\r\n icon={center_cross}\r\n label={__(\"center alignment\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_items === \"flex-end\"}\r\n onClick={() => props.onFlexChange(\"flex-end\", \"inner_items\")} //親コンポーネントに通知\r\n icon={end_cross}\r\n label={cross_end_tip}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.inner_items === \"stretch\"}\r\n onClick={() => props.onFlexChange(\"stretch\", \"inner_items\")} //親コンポーネントに通知\r\n icon={stretch}\r\n label={__(\"beteen stretch\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n </ToolbarGroup>\r\n )}\r\n {isContainer && (\r\n <>\r\n {isMobile ? (\r\n <p>{__(\"Alignment in container(Mobile)\", \"block-collections\")}</p>\r\n ) : (\r\n <p>\r\n {__(\"Alignment in container(DeskTop)\", \"block-collections\")}\r\n </p>\r\n )}\r\n\r\n <ToolbarGroup>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={\r\n direction === \"row\"\r\n ? sel_pos.outer_vertical === \"self-start\"\r\n : sel_pos.outer_align === \"left\"\r\n }\r\n onClick={\r\n direction === \"row\"\r\n ? () => props.onVerticalChange(\"self-start\")\r\n : () => props.onAlignChange(\"left\")\r\n }\r\n icon={direction === \"row\" ? upper : justifyLeft}\r\n label={\r\n direction === \"row\"\r\n ? __(\"upper alignment\", \"block-collections\")\r\n : __(\"left alignment\", \"block-collections\")\r\n }\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={\r\n direction === \"row\"\r\n ? sel_pos.outer_vertical === \"center\"\r\n : sel_pos.outer_align === \"center\"\r\n }\r\n onClick={\r\n direction === \"row\"\r\n ? () => props.onVerticalChange(\"center\")\r\n : () => props.onAlignChange(\"center\")\r\n }\r\n icon={direction === \"row\" ? middle : justifyCenter}\r\n label={__(\"center alignment\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={\r\n direction === \"row\"\r\n ? sel_pos.outer_vertical === \"self-end\"\r\n : sel_pos.outer_align === \"right\"\r\n }\r\n onClick={\r\n direction === \"row\"\r\n ? () => props.onVerticalChange(\"self-end\")\r\n : () => props.onAlignChange(\"right\")\r\n }\r\n icon={direction === \"row\" ? lower : justifyRight}\r\n label={\r\n direction === \"row\"\r\n ? __(\"lower alignment\", \"block-collections\")\r\n : __(\"right alignment\", \"block-collections\")\r\n }\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.outer_vertical === \"stretch\"}\r\n onClick={\r\n direction === \"row\"\r\n ? () => props.onVerticalChange(\"stretch\")\r\n : () => props.onAlignChange(\"stretch\")\r\n }\r\n icon={direction === \"row\" ? vert_between : justifyStretch}\r\n label={__(\"stretch\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n </ToolbarGroup>\r\n </>\r\n )}\r\n\r\n <BlockWidth\r\n attributes={attributes}\r\n isMobile={isMobile}\r\n isSubmenu={isSubmenu}\r\n onWidthChange={(key, widthVal) => props.onWidthChange(key, widthVal)}\r\n onFreeWidthChange={(key, freeVal) =>\r\n props.onFreeWidthChange(key, freeVal)\r\n }\r\n />\r\n\r\n {isFlexItem && (\r\n <PanelRow className=\"position_row\">\r\n <TextControl\r\n label={__(\"grow\", \"block-collections\")}\r\n labelPosition=\"left\"\r\n value={sel_pos.flex?.grow}\r\n onChange={(newValue) => {\r\n const flexObj = {\r\n grow: newValue,\r\n shrink: sel_pos.flex?.shrink,\r\n basis: sel_pos.flex?.basis,\r\n };\r\n props.onFlexItemChange(flexObj);\r\n }}\r\n />\r\n <TextControl\r\n label={__(\"shrink\", \"block-collections\")}\r\n labelPosition=\"left\"\r\n value={sel_pos.flex?.shrink}\r\n onChange={(newValue) => {\r\n const flexObj = {\r\n grow: sel_pos.flex?.grow,\r\n shrink: newValue,\r\n basis: sel_pos.flex?.basis,\r\n };\r\n props.onFlexItemChange(flexObj);\r\n }}\r\n />\r\n <TextControl\r\n label={__(\"basis\", \"block-collections\")}\r\n labelPosition=\"left\"\r\n value={sel_pos.flex?.basis}\r\n onChange={(newValue) => {\r\n const flexObj = {\r\n grow: sel_pos.flex?.grow,\r\n shrink: sel_pos.flex?.shrink,\r\n basis: newValue,\r\n };\r\n props.onFlexItemChange(flexObj);\r\n }}\r\n />\r\n </PanelRow>\r\n )}\r\n\r\n <BlockHeight\r\n attributes={attributes}\r\n isMobile={isMobile}\r\n onHeightChange={(heightVal) => props.onHeightChange(heightVal)}\r\n onFreeHeightChange={(freeVal) => props.onFreeHeightChange(freeVal)}\r\n />\r\n\r\n {sel_pos.direction === \"grid\" && (\r\n <>\r\n {isMobile ? (\r\n <p>{__(\"Grid Info settings(Mobile)\", \"block-collections\")}</p>\r\n ) : (\r\n <p>{__(\"Grid Info settings(DeskTop)\", \"block-collections\")}</p>\r\n )}\r\n <Button variant=\"primary\" onClick={openGridModal}>\r\n {__(\"Open Setting Modal\", \"block-collections\")}\r\n </Button>\r\n {isGridModalOpen && (\r\n <Modal title=\"Grid Info settings\" onRequestClose={closeGridModal}>\r\n <GridControls\r\n attributes={sel_pos.grid_info}\r\n clientId={clientId}\r\n onChange={(newValue) => {\r\n props.onGridChange(newValue);\r\n }}\r\n />\r\n </Modal>\r\n )}\r\n </>\r\n )}\r\n <div className=\"itmar_title_type\">\r\n <RadioControl\r\n label={__(\"Position Type\", \"block-collections\")}\r\n selected={positionType}\r\n options={[\r\n { label: __(\"Static\", \"block-collections\"), value: \"staic\" },\r\n {\r\n label: __(\"Relative\", \"block-collections\"),\r\n value: \"relative\",\r\n },\r\n {\r\n label: __(\"Absolute\", \"block-collections\"),\r\n value: \"absolute\",\r\n },\r\n { label: __(\"Fix\", \"block-collections\"), value: \"fixed\" },\r\n { label: __(\"Sticky\", \"block-collections\"), value: \"sticky\" },\r\n ]}\r\n onChange={(newVal) => {\r\n props.onPositionChange(newVal);\r\n }}\r\n />\r\n </div>\r\n {positionType === \"absolute\" && !isParallax && (\r\n <ToggleControl\r\n label={__(\r\n \"Center Vertically and Horizontally\",\r\n \"block-collections\"\r\n )}\r\n checked={isPosCenter}\r\n onChange={(newVal) => {\r\n props.onIsPosCenterChange(newVal);\r\n }}\r\n />\r\n )}\r\n {((positionType === \"absolute\" && !isPosCenter) ||\r\n positionType === \"fixed\" ||\r\n positionType === \"sticky\") && (\r\n <>\r\n {isMobile ? (\r\n <p>{__(\"Block Position(Mobile)\", \"block-collections\")}</p>\r\n ) : (\r\n <p>{__(\"Block Position(DeskTop)\", \"block-collections\")}</p>\r\n )}\r\n <PanelBody\r\n title={__(\"Vertical\", \"block-collections\")}\r\n initialOpen={true}\r\n >\r\n {!sel_pos.posValue?.isVertCenter && (\r\n <PanelRow className=\"position_row\">\r\n <ComboboxControl\r\n options={[\r\n { value: \"top\", label: \"Top\" },\r\n { value: \"bottom\", label: \"Bottom\" },\r\n ]}\r\n value={sel_pos.posValue?.vertBase || \"top\"}\r\n onChange={(newValue) => {\r\n const newValObj = {\r\n ...(sel_pos.posValue || {}),\r\n vertBase: newValue,\r\n };\r\n props.onPosValueChange(newValObj);\r\n }}\r\n />\r\n <UnitControl\r\n dragDirection=\"e\"\r\n onChange={(newValue) => {\r\n const newValObj = {\r\n ...(sel_pos.posValue || {}),\r\n vertValue: newValue,\r\n };\r\n props.onPosValueChange(newValObj);\r\n }}\r\n value={sel_pos.posValue?.vertValue || \"3em\"}\r\n />\r\n </PanelRow>\r\n )}\r\n {!isParallax && (\r\n <ToggleControl\r\n label={__(\"Is Center\", \"block-collections\")}\r\n checked={sel_pos.posValue?.isVertCenter}\r\n onChange={(newValue) => {\r\n const newValObj = {\r\n ...(sel_pos.posValue || {}),\r\n isVertCenter: newValue,\r\n };\r\n props.onPosValueChange(newValObj);\r\n }}\r\n />\r\n )}\r\n </PanelBody>\r\n\r\n <PanelBody\r\n title={__(\"Horizon\", \"block-collections\")}\r\n initialOpen={true}\r\n >\r\n {!sel_pos.posValue?.isHorCenter && (\r\n <PanelRow className=\"position_row\">\r\n <ComboboxControl\r\n options={[\r\n { value: \"left\", label: \"Left\" },\r\n { value: \"right\", label: \"Right\" },\r\n ]}\r\n value={sel_pos.posValue?.horBase || \"left\"}\r\n onChange={(newValue) => {\r\n const newValObj = {\r\n ...(sel_pos.posValue || {}),\r\n horBase: newValue,\r\n };\r\n props.onPosValueChange(newValObj);\r\n }}\r\n />\r\n <UnitControl\r\n dragDirection=\"e\"\r\n onChange={(newValue) => {\r\n const newValObj = {\r\n ...(sel_pos.posValue || {}),\r\n horValue: newValue,\r\n };\r\n props.onPosValueChange(newValObj);\r\n }}\r\n value={sel_pos.posValue?.horValue || \"3em\"}\r\n />\r\n </PanelRow>\r\n )}\r\n {!isParallax && (\r\n <ToggleControl\r\n label={__(\"Is Center\", \"block-collections\")}\r\n checked={sel_pos.posValue?.isHorCenter}\r\n onChange={(newValue) => {\r\n const newValObj = {\r\n ...(sel_pos.posValue || {}),\r\n isHorCenter: newValue,\r\n };\r\n props.onPosValueChange(newValObj);\r\n }}\r\n />\r\n )}\r\n </PanelBody>\r\n </>\r\n )}\r\n </PanelBody>\r\n </>\r\n );\r\n}\r\n\r\nexport function BlockWidth(props) {\r\n const { attributes, isMobile, flexDirection, isSubmenu } = props;\r\n const { default_val, mobile_val } = attributes;\r\n\r\n //モバイルかデスクトップか\r\n const sel_pos = isMobile ? mobile_val : default_val;\r\n\r\n // 翻訳が必要な文字列を直接指定\r\n const blockMaxWidthMobile = __(\r\n \"Block Max Width(Mobile)\",\r\n \"block-collections\"\r\n );\r\n const blockWidthMobile = __(\"Block Width(Mobile)\", \"block-collections\");\r\n const blockMaxWidthDesktop = __(\r\n \"Block Max Width(DeskTop)\",\r\n \"block-collections\"\r\n );\r\n const blockWidthDesktop = __(\"Block Width(DeskTop)\", \"block-collections\");\r\n\r\n // ラベル\r\n const widthLabel = isMobile ? blockWidthMobile : blockWidthDesktop;\r\n const maxWidthLabel = isMobile ? blockMaxWidthMobile : blockMaxWidthDesktop;\r\n return (\r\n <>\r\n <p>{widthLabel}</p>\r\n <ToolbarGroup>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.width_val === \"full\"}\r\n onClick={() => props.onWidthChange(\"width_val\", \"full\")}\r\n text=\"full\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.width_val === \"fit\"}\r\n onClick={() => props.onWidthChange(\"width_val\", \"fit\")}\r\n text=\"fit\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.width_val === \"wideSize\"}\r\n onClick={() => props.onWidthChange(\"width_val\", \"wideSize\")}\r\n icon={stretchWide}\r\n label={__(\"Wide Size\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.width_val === \"contentSize\"}\r\n onClick={() => props.onWidthChange(\"width_val\", \"contentSize\")}\r\n icon={positionCenter}\r\n label={__(\"Content Size\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.width_val === \"free\"}\r\n onClick={() => props.onWidthChange(\"width_val\", \"free\")}\r\n text=\"free\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n </ToolbarGroup>\r\n\r\n {sel_pos.width_val === \"free\" && (\r\n <UnitControl\r\n dragDirection=\"e\"\r\n onChange={(newValue) =>\r\n props.onFreeWidthChange(\"free_width\", newValue)\r\n }\r\n value={sel_pos.free_width}\r\n />\r\n )}\r\n <p>{maxWidthLabel}</p>\r\n <ToolbarGroup>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.max_width === \"full\"}\r\n onClick={() => props.onWidthChange(\"max_width\", \"full\")}\r\n text=\"full\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.max_width === \"fit\"}\r\n onClick={() => props.onWidthChange(\"max_width\", \"fit\")}\r\n text=\"fit\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.max_width === \"wideSize\"}\r\n onClick={() => props.onWidthChange(\"max_width\", \"wideSize\")}\r\n icon={stretchWide}\r\n label={__(\"Wide Size\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.max_width === \"contentSize\"}\r\n onClick={() => props.onWidthChange(\"max_width\", \"contentSize\")}\r\n icon={positionCenter}\r\n label={__(\"Content Size\", \"block-collections\")}\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.max_width === \"free\"}\r\n onClick={() => props.onWidthChange(\"max_width\", \"free\")}\r\n text=\"free\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n </ToolbarGroup>\r\n\r\n {sel_pos.max_width === \"free\" && (\r\n <UnitControl\r\n dragDirection=\"e\"\r\n onChange={(newValue) =>\r\n props.onFreeWidthChange(\"max_free_width\", newValue)\r\n }\r\n value={sel_pos.max_free_width}\r\n />\r\n )}\r\n </>\r\n );\r\n}\r\n\r\nexport function BlockHeight(props) {\r\n const { attributes, isMobile } = props;\r\n const { default_val, mobile_val } = attributes;\r\n\r\n //モバイルかデスクトップか\r\n const sel_pos = isMobile ? mobile_val : default_val;\r\n\r\n return (\r\n <>\r\n {isMobile ? (\r\n <p>{__(\"Block Height(Mobile)\", \"block-collections\")}</p>\r\n ) : (\r\n <p>{__(\"Block Height(DeskTop)\", \"block-collections\")}</p>\r\n )}\r\n <ToolbarGroup>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.height_val === \"full\"}\r\n onClick={() => props.onHeightChange(\"full\")}\r\n text=\"full\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.height_val === \"fit\"}\r\n onClick={() => props.onHeightChange(\"fit\")}\r\n text=\"fit\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.height_val === \"free\"}\r\n onClick={() => props.onHeightChange(\"free\")}\r\n text=\"free\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n <ToolbarItem>\r\n {(itemProps) => (\r\n <Button\r\n {...itemProps}\r\n isPressed={sel_pos.height_val === \"auto\"}\r\n onClick={() => props.onHeightChange(\"auto\")}\r\n text=\"auto\"\r\n />\r\n )}\r\n </ToolbarItem>\r\n </ToolbarGroup>\r\n {sel_pos.height_val === \"free\" && (\r\n <UnitControl\r\n dragDirection=\"e\"\r\n onChange={(newValue) => props.onFreeHeightChange(newValue)}\r\n value={sel_pos.free_height}\r\n />\r\n )}\r\n </>\r\n );\r\n}\r\n"],"names":["flex","React","createElement","Icon","icon","stack","className","upper","justifyLeft","middle","justifyCenter","lower","justifyRight","vert_between","justifyStretch","vert_around","justifySpaceBetween","BlockPlace","props","_sel_pos$flex","_sel_pos$flex4","_sel_pos$flex7","_sel_pos$posValue","_sel_pos$posValue2","_sel_pos$posValue3","_sel_pos$posValue4","_sel_pos$posValue5","_sel_pos$posValue6","_sel_pos$posValue7","_sel_pos$posValue8","attributes","clientId","blockRef","isMobile","isSubmenu","isParallax","positionType","isPosCenter","default_val","mobile_val","sel_pos","start_icon","direction","center_icon","end_icon","start_cross","center_cross","end_cross","stretch","between_icon","around_icon","start_tip","__","end_tip","cross_start_tip","cross_end_tip","isContainer","setIsContainer","useState","isFlexItem","setIsFlexItem","setDirection","useEffect","current","element","parentElement","grandparentElement","computedStyle","getComputedStyle","display","flexDirection","isGridModalOpen","setIsGridModalOpen","openGridModal","closeGridModal","Fragment","PanelBody","title","initialOpen","ToolbarGroup","ToolbarItem","itemProps","Button","_extends","isPressed","onClick","onDirectionChange","group","label","layout","PanelRow","ToggleControl","checked","reverse","onChange","onReverseChange","wrap","onWrapChange","inner_align","onFlexChange","inner_items","outer_vertical","outer_align","onVerticalChange","onAlignChange","BlockWidth","onWidthChange","key","widthVal","onFreeWidthChange","freeVal","TextControl","labelPosition","value","grow","newValue","_sel_pos$flex2","_sel_pos$flex3","flexObj","shrink","basis","onFlexItemChange","_sel_pos$flex5","_sel_pos$flex6","_sel_pos$flex8","_sel_pos$flex9","BlockHeight","onHeightChange","heightVal","onFreeHeightChange","variant","Modal","onRequestClose","GridControls","grid_info","onGridChange","RadioControl","selected","options","newVal","onPositionChange","onIsPosCenterChange","posValue","isVertCenter","ComboboxControl","vertBase","newValObj","_objectSpread","onPosValueChange","UnitControl","dragDirection","vertValue","isHorCenter","horBase","horValue","blockMaxWidthMobile","blockWidthMobile","blockMaxWidthDesktop","blockWidthDesktop","widthLabel","maxWidthLabel","width_val","text","stretchWide","positionCenter","free_width","max_width","max_free_width","height_val","free_height"],"mappings":";;;;;;;AAgCA;AACA,IAAMA,IAAI,gBAAGC,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AAACC,EAAAA,IAAI,EAAEC,KAAM;AAACC,EAAAA,SAAS,EAAC;AAAa,CAAE,CAAC;AAC1D;AACA,IAAMC,KAAK,gBAAGN,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AAACC,EAAAA,IAAI,EAAEI,WAAY;AAACF,EAAAA,SAAS,EAAC;AAAa,CAAE,CAAC;AACjE;AACA,IAAMG,MAAM,gBAAGR,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AAACC,EAAAA,IAAI,EAAEM,aAAc;AAACJ,EAAAA,SAAS,EAAC;AAAa,CAAE,CAAC;AACpE;AACA,IAAMK,KAAK,gBAAGV,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AAACC,EAAAA,IAAI,EAAEQ,YAAa;AAACN,EAAAA,SAAS,EAAC;AAAa,CAAE,CAAC;AAClE;AACA,IAAMO,YAAY,gBAAGZ,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AAACC,EAAAA,IAAI,EAAEU,cAAe;AAACR,EAAAA,SAAS,EAAC;AAAa,CAAE,CAAC;AAC3E;AACA,IAAMS,WAAW,gBAAGd,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AAACC,EAAAA,IAAI,EAAEY,mBAAoB;AAACV,EAAAA,SAAS,EAAC;AAAa,CAAE,CAAC;AAEhE,SAASW,UAAUA,CAACC,KAAK,EAAE;EAAA,IAAAC,aAAA,EAAAC,cAAA,EAAAC,cAAA,EAAAC,iBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA,EAAAC,kBAAA;EACxC,IAAM;IAAEC,UAAU;IAAEC,QAAQ;IAAEC,QAAQ;IAAEC,QAAQ;IAAEC,SAAS;AAAEC,IAAAA;AAAW,GAAC,GACvEjB,KAAK;EACP,IAAM;IAAEkB,YAAY;IAAEC,WAAW;IAAEC,WAAW;AAAEC,IAAAA;AAAW,GAAC,GAAGT,UAAU;;AAEzE;AACA,EAAA,IAAMU,OAAO,GAAGP,QAAQ,GAAGM,UAAU,GAAGD,WAAW;;AAEnD;;EAEA,IAAMG,UAAU,GAAGD,OAAO,CAACE,SAAS,KAAK,UAAU,GAAGnC,KAAK,GAAGC,WAAW;EACzE,IAAMmC,WAAW,GAAGH,OAAO,CAACE,SAAS,KAAK,UAAU,GAAGjC,MAAM,GAAGC,aAAa;EAC7E,IAAMkC,QAAQ,GAAGJ,OAAO,CAACE,SAAS,KAAK,UAAU,GAAG/B,KAAK,GAAGC,YAAY;EACxE,IAAMiC,WAAW,GAAGL,OAAO,CAACE,SAAS,KAAK,UAAU,GAAGlC,WAAW,GAAGD,KAAK;EAC1E,IAAMuC,YAAY,GAChBN,OAAO,CAACE,SAAS,KAAK,UAAU,GAAGhC,aAAa,GAAGD,MAAM;EAC3D,IAAMsC,SAAS,GAAGP,OAAO,CAACE,SAAS,KAAK,UAAU,GAAG9B,YAAY,GAAGD,KAAK;EACzE,IAAMqC,OAAO,GACXR,OAAO,CAACE,SAAS,KAAK,UAAU,GAAG5B,cAAc,GAAGD,YAAY;EAClE,IAAMoC,YAAY,GAChBT,OAAO,CAACE,SAAS,KAAK,UAAU,GAAG7B,YAAY,GAAGC,cAAc;EAClE,IAAMoC,WAAW,GACfV,OAAO,CAACE,SAAS,KAAK,UAAU,GAAG3B,WAAW,GAAGC,mBAAmB;AACtE;EACA,IAAMmC,SAAS,GACbX,OAAO,CAACE,SAAS,KAAK,UAAU,GAC5BU,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,GAC1CA,EAAE,CAAC,gBAAgB,EAAE,mBAAmB,CAAC;EAC/C,IAAMC,OAAO,GACXb,OAAO,CAACE,SAAS,KAAK,UAAU,GAC5BU,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,GAC1CA,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;EAChD,IAAME,eAAe,GACnBd,OAAO,CAACE,SAAS,KAAK,UAAU,GAC5BU,EAAE,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GACzCA,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;EAChD,IAAMG,aAAa,GACjBf,OAAO,CAACE,SAAS,KAAK,UAAU,GAC5BU,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,GAC1CA,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;EAEhD,IAAM,CAACI,WAAW,EAAEC,cAAc,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC;EACrD,IAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAGF,QAAQ,CAAC,KAAK,CAAC;EACnD,IAAM,CAAChB,SAAS,EAAEmB,YAAY,CAAC,GAAGH,QAAQ,CAAC,KAAK,CAAC;AACjDI,EAAAA,SAAS,CAAC,MAAM;IACd,IAAI9B,QAAQ,CAAC+B,OAAO,EAAE;AACpB,MAAA,IAAMC,OAAO,GAAGhC,QAAQ,CAAC+B,OAAO;AAChC,MAAA,IAAME,aAAa,GAAGD,OAAO,CAACC,aAAa;MAC3C,IAAMC,kBAAkB,GAAGD,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,MAAA,GAAA,MAAA,GAAbA,aAAa,CAAEA,aAAa;AAEvD,MAAA,IAAME,aAAa,GAAGC,gBAAgB,CAACF,kBAAkB,CAAC;AAC1D;MACA,IACEC,aAAa,CAACE,OAAO,KAAK,MAAM,IAChCF,aAAa,CAACE,OAAO,KAAK,aAAa,IACvCF,aAAa,CAACE,OAAO,KAAK,MAAM,IAChCF,aAAa,CAACE,OAAO,KAAK,aAAa,EACvC;QACAZ,cAAc,CAAC,IAAI,CAAC;AACtB,MAAA;AACA;MACA,IACEU,aAAa,CAACE,OAAO,KAAK,MAAM,IAChCF,aAAa,CAACE,OAAO,KAAK,aAAa,EACvC;QACAT,aAAa,CAAC,IAAI,CAAC;QACnB,IACEO,aAAa,CAACG,aAAa,KAAK,KAAK,IACrCH,aAAa,CAACG,aAAa,KAAK,aAAa,EAC7C;UACAT,YAAY,CAAC,KAAK,CAAC;AACrB,QAAA,CAAC,MAAM;UACLA,YAAY,CAAC,QAAQ,CAAC;AACxB,QAAA;AACF,MAAA;AACF,IAAA;EACF,CAAC,EAAE,EAAE,CAAC;;AAEN;EACA,IAAM,CAACU,eAAe,EAAEC,kBAAkB,CAAC,GAAGd,QAAQ,CAAC,KAAK,CAAC;AAC7D,EAAA,IAAMe,aAAa,GAAGA,MAAMD,kBAAkB,CAAC,IAAI,CAAC;AACpD,EAAA,IAAME,cAAc,GAAGA,MAAMF,kBAAkB,CAAC,KAAK,CAAC;;AAEtD;AACA,EAA4BpB,EAAE,CAC5B,yBAAyB,EACzB,mBACF;AACA,EAAyBA,EAAE,CAAC,qBAAqB,EAAE,mBAAmB;AACtE,EAA6BA,EAAE,CAC7B,0BAA0B,EAC1B,mBACF;AACA,EAA0BA,EAAE,CAAC,sBAAsB,EAAE,mBAAmB;AAWxE,EAAA,oBACEnD,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA0E,QAAA,EAAA,IAAA,eACE1E,KAAA,CAAAC,aAAA,CAAC0E,SAAS,EAAA;AACRC,IAAAA,KAAK,EAAEzB,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAE;AAClD0B,IAAAA,WAAW,EAAE,KAAM;AACnBxE,IAAAA,SAAS,EAAC;GAAuB,EAEhC2B,QAAQ,gBACPhC,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,8BAA8B,EAAE,mBAAmB,CAAK,CAAC,gBAEhEnD,KAAA,CAAAC,aAAA,YAAIkD,EAAE,CAAC,+BAA+B,EAAE,mBAAmB,CAAK,CACjE,eAEDnD,KAAA,CAAAC,aAAA,CAAC6E,YAAY,EAAA,IAAA,eACX9E,KAAA,CAAAC,aAAA,CAAC8E,WAAW,QACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,CAAA,EAAA,EACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACE,SAAS,KAAK,OAAQ;IACzC2C,OAAO,EAAEA,MAAMnE,KAAK,CAACoE,iBAAiB,CAAC,OAAO,CAAE;AAChDlF,IAAAA,IAAI,EAAEmF,KAAM;AACZC,IAAAA,KAAK,EAAEpC,EAAE,CAAC,OAAO,EAAE,mBAAmB;AAAE,GAAA,CACzC,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACE,SAAS,KAAK,UAAW;IAC5C2C,OAAO,EAAEA,MAAMnE,KAAK,CAACoE,iBAAiB,CAAC,UAAU,CAAE;AACnDlF,IAAAA,IAAI,EAAEC,KAAM;AACZmF,IAAAA,KAAK,EAAEpC,EAAE,CAAC,UAAU,EAAE,mBAAmB;AAAE,GAAA,CAC5C,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACE,SAAS,KAAK,SAAU;IAC3C2C,OAAO,EAAEA,MAAMnE,KAAK,CAACoE,iBAAiB,CAAC,SAAS,CAAE;AAClDlF,IAAAA,IAAI,EAAEJ,IAAK;AACXwF,IAAAA,KAAK,EAAEpC,EAAE,CAAC,SAAS,EAAE,mBAAmB;AAAE,GAAA,CAC3C,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACE,SAAS,KAAK,MAAO;IACxC2C,OAAO,EAAEA,MAAMnE,KAAK,CAACoE,iBAAiB,CAAC,MAAM,CAAE;AAC/ClF,IAAAA,IAAI,EAAEqF,MAAO;AACbD,IAAAA,KAAK,EAAEpC,EAAE,CAAC,MAAM,EAAE,mBAAmB;GAAE,CACxC,CAEQ,CAAC,EACb,CAACZ,OAAO,CAACE,SAAS,KAAK,SAAS,IAC/BF,OAAO,CAACE,SAAS,KAAK,UAAU,kBAChCzC,KAAA,CAAAC,aAAA,CAACwF,QAAQ,EAAA;AAACpF,IAAAA,SAAS,EAAC;AAAc,GAAA,eAChCL,KAAA,CAAAC,aAAA,CAACyF,aAAa,EAAA;AACZH,IAAAA,KAAK,EAAEpC,EAAE,CAAC,SAAS,EAAE,mBAAmB,CAAE;IAC1CwC,OAAO,EAAEpD,OAAO,CAACqD,OAAQ;AACzBC,IAAAA,QAAQ,EAAGF,OAAO,IAAK1E,KAAK,CAAC6E,eAAe,CAACH,OAAO;AAAE,GACvD,CAAC,eACF3F,KAAA,CAAAC,aAAA,CAACyF,aAAa,EAAA;AACZH,IAAAA,KAAK,EAAEpC,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAE;IACvCwC,OAAO,EAAEpD,OAAO,CAACwD,IAAK;AACtBF,IAAAA,QAAQ,EAAGF,OAAO,IAAK1E,KAAK,CAAC+E,YAAY,CAACL,OAAO;AAAE,GACpD,CACO,CAEA,CAAC,EAEdpD,OAAO,CAACE,SAAS,KAAK,OAAO,IAAIF,OAAO,CAACE,SAAS,KAAK,MAAM,iBAC5DzC,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA0E,QAAA,QACG1C,QAAQ,gBACPhC,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,8BAA8B,EAAE,mBAAmB,CAAK,CAAC,gBAEhEnD,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,+BAA+B,EAAE,mBAAmB,CAAK,CACjE,eACDnD,KAAA,CAAAC,aAAA,CAAC6E,YAAY,EAAA,IAAA,eACX9E,KAAA,CAAAC,aAAA,CAAC8E,WAAW,QACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC0D,WAAW,KAAK,YAAa;IAChDb,OAAO,EAAEA,MACPnE,KAAK,CAACiF,YAAY,CAAC,YAAY,EAAE,aAAa,CAC/C;AAAC;AACF/F,IAAAA,IAAI,EAAEqC,UAAW;AACjB+C,IAAAA,KAAK,EAAErC;AAAU,GAAA,CAClB,CAEQ,CAAC,eACdlD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC0D,WAAW,KAAK,QAAS;IAC5Cb,OAAO,EAAEA,MAAMnE,KAAK,CAACiF,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAE;AAAC;AAC5D/F,IAAAA,IAAI,EAAEuC,WAAY;AAClB6C,IAAAA,KAAK,EAAEpC,EAAE,CAAC,kBAAkB,EAAE,mBAAmB;AAAE,GAAA,CACpD,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC0D,WAAW,KAAK,UAAW;IAC9Cb,OAAO,EAAEA,MACPnE,KAAK,CAACiF,YAAY,CAAC,UAAU,EAAE,aAAa,CAC7C;AAAC;AACF/F,IAAAA,IAAI,EAAEwC,QAAS;AACf4C,IAAAA,KAAK,EAAEnC;AAAQ,GAAA,CAChB,CAEQ,CAAC,eACdpD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC0D,WAAW,KAAK,eAAgB;IACnDb,OAAO,EAAEA,MACPnE,KAAK,CAACiF,YAAY,CAAC,eAAe,EAAE,aAAa,CAClD;AAAC;AACF/F,IAAAA,IAAI,EAAE6C,YAAa;AACnBuC,IAAAA,KAAK,EAAEpC,EAAE,CAAC,SAAS,EAAE,mBAAmB;AAAE,GAAA,CAC3C,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC0D,WAAW,KAAK,cAAe;IAClDb,OAAO,EAAEA,MACPnE,KAAK,CAACiF,YAAY,CAAC,cAAc,EAAE,aAAa,CACjD;AAAC;AACF/F,IAAAA,IAAI,EAAE8C,WAAY;AAClBsC,IAAAA,KAAK,EAAEpC,EAAE,CAAC,gBAAgB,EAAE,mBAAmB;AAAE,GAAA,CAClD,CAEQ,CACD,CACd,CACH,EAEA,CAAClB,SAAS,KACRD,QAAQ,gBACPhC,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,+BAA+B,EAAE,mBAAmB,CAAK,CAAC,gBAEjEnD,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,gCAAgC,EAAE,mBAAmB,CAAK,CAClE,CAAC,EAEH,CAAClB,SAAS,iBACTjC,KAAA,CAAAC,aAAA,CAAC6E,YAAY,EAAA,IAAA,eACX9E,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,CAAA,EAAA,EACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC4D,WAAW,KAAK,YAAa;IAChDf,OAAO,EAAEA,MACPnE,KAAK,CAACiF,YAAY,CAAC,YAAY,EAAE,aAAa,CAC/C;AAAC;AACF/F,IAAAA,IAAI,EAAEyC,WAAY;AAClB2C,IAAAA,KAAK,EAAElC;AAAgB,GAAA,CACxB,CAEQ,CAAC,eACdrD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC4D,WAAW,KAAK,QAAS;IAC5Cf,OAAO,EAAEA,MAAMnE,KAAK,CAACiF,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAE;AAAC;AAC5D/F,IAAAA,IAAI,EAAE0C,YAAa;AACnB0C,IAAAA,KAAK,EAAEpC,EAAE,CAAC,kBAAkB,EAAE,mBAAmB;AAAE,GAAA,CACpD,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC4D,WAAW,KAAK,UAAW;IAC9Cf,OAAO,EAAEA,MAAMnE,KAAK,CAACiF,YAAY,CAAC,UAAU,EAAE,aAAa,CAAE;AAAC;AAC9D/F,IAAAA,IAAI,EAAE2C,SAAU;AAChByC,IAAAA,KAAK,EAAEjC;AAAc,GAAA,CACtB,CAEQ,CAAC,eACdtD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC4D,WAAW,KAAK,SAAU;IAC7Cf,OAAO,EAAEA,MAAMnE,KAAK,CAACiF,YAAY,CAAC,SAAS,EAAE,aAAa,CAAE;AAAC;AAC7D/F,IAAAA,IAAI,EAAE4C,OAAQ;AACdwC,IAAAA,KAAK,EAAEpC,EAAE,CAAC,gBAAgB,EAAE,mBAAmB;AAAE,GAAA,CAClD,CAEQ,CACD,CACf,EACAI,WAAW,iBACVvD,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA0E,QAAA,EAAA,IAAA,EACG1C,QAAQ,gBACPhC,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,gCAAgC,EAAE,mBAAmB,CAAK,CAAC,gBAElEnD,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EACGkD,EAAE,CAAC,iCAAiC,EAAE,mBAAmB,CACzD,CACJ,eAEDnD,KAAA,CAAAC,aAAA,CAAC6E,YAAY,EAAA,IAAA,eACX9E,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EACP1C,SAAS,KAAK,KAAK,GACfF,OAAO,CAAC6D,cAAc,KAAK,YAAY,GACvC7D,OAAO,CAAC8D,WAAW,KAAK,MAC7B;AACDjB,IAAAA,OAAO,EACL3C,SAAS,KAAK,KAAK,GACf,MAAMxB,KAAK,CAACqF,gBAAgB,CAAC,YAAY,CAAC,GAC1C,MAAMrF,KAAK,CAACsF,aAAa,CAAC,MAAM,CACrC;AACDpG,IAAAA,IAAI,EAAEsC,SAAS,KAAK,KAAK,GAAGnC,KAAK,GAAGC,WAAY;AAChDgF,IAAAA,KAAK,EACH9C,SAAS,KAAK,KAAK,GACfU,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,GAC1CA,EAAE,CAAC,gBAAgB,EAAE,mBAAmB;AAC7C,GAAA,CACF,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EACP1C,SAAS,KAAK,KAAK,GACfF,OAAO,CAAC6D,cAAc,KAAK,QAAQ,GACnC7D,OAAO,CAAC8D,WAAW,KAAK,QAC7B;AACDjB,IAAAA,OAAO,EACL3C,SAAS,KAAK,KAAK,GACf,MAAMxB,KAAK,CAACqF,gBAAgB,CAAC,QAAQ,CAAC,GACtC,MAAMrF,KAAK,CAACsF,aAAa,CAAC,QAAQ,CACvC;AACDpG,IAAAA,IAAI,EAAEsC,SAAS,KAAK,KAAK,GAAGjC,MAAM,GAAGC,aAAc;AACnD8E,IAAAA,KAAK,EAAEpC,EAAE,CAAC,kBAAkB,EAAE,mBAAmB;AAAE,GAAA,CACpD,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EACP1C,SAAS,KAAK,KAAK,GACfF,OAAO,CAAC6D,cAAc,KAAK,UAAU,GACrC7D,OAAO,CAAC8D,WAAW,KAAK,OAC7B;AACDjB,IAAAA,OAAO,EACL3C,SAAS,KAAK,KAAK,GACf,MAAMxB,KAAK,CAACqF,gBAAgB,CAAC,UAAU,CAAC,GACxC,MAAMrF,KAAK,CAACsF,aAAa,CAAC,OAAO,CACtC;AACDpG,IAAAA,IAAI,EAAEsC,SAAS,KAAK,KAAK,GAAG/B,KAAK,GAAGC,YAAa;AACjD4E,IAAAA,KAAK,EACH9C,SAAS,KAAK,KAAK,GACfU,EAAE,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,GAC1CA,EAAE,CAAC,iBAAiB,EAAE,mBAAmB;AAC9C,GAAA,CACF,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC6D,cAAc,KAAK,SAAU;AAChDhB,IAAAA,OAAO,EACL3C,SAAS,KAAK,KAAK,GACf,MAAMxB,KAAK,CAACqF,gBAAgB,CAAC,SAAS,CAAC,GACvC,MAAMrF,KAAK,CAACsF,aAAa,CAAC,SAAS,CACxC;AACDpG,IAAAA,IAAI,EAAEsC,SAAS,KAAK,KAAK,GAAG7B,YAAY,GAAGC,cAAe;AAC1D0E,IAAAA,KAAK,EAAEpC,EAAE,CAAC,SAAS,EAAE,mBAAmB;GAAE,CAC3C,CAEQ,CACD,CACd,CACH,eAEDnD,KAAA,CAAAC,aAAA,CAACuG,UAAU,EAAA;AACT3E,IAAAA,UAAU,EAAEA,UAAW;AACvBG,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,SAAS,EAAEA,SAAU;AACrBwE,IAAAA,aAAa,EAAEA,CAACC,GAAG,EAAEC,QAAQ,KAAK1F,KAAK,CAACwF,aAAa,CAACC,GAAG,EAAEC,QAAQ,CAAE;AACrEC,IAAAA,iBAAiB,EAAEA,CAACF,GAAG,EAAEG,OAAO,KAC9B5F,KAAK,CAAC2F,iBAAiB,CAACF,GAAG,EAAEG,OAAO;GAEvC,CAAC,EAEDnD,UAAU,iBACT1D,KAAA,CAAAC,aAAA,CAACwF,QAAQ,EAAA;AAACpF,IAAAA,SAAS,EAAC;AAAc,GAAA,eAChCL,KAAA,CAAAC,aAAA,CAAC6G,WAAW,EAAA;AACVvB,IAAAA,KAAK,EAAEpC,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAE;AACvC4D,IAAAA,aAAa,EAAC,MAAM;IACpBC,KAAK,EAAA,CAAA9F,aAAA,GAAEqB,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAAmB,aAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,aAAA,CAAc+F,IAAK;IAC1BpB,QAAQ,EAAGqB,QAAQ,IAAK;MAAA,IAAAC,cAAA,EAAAC,cAAA;AACtB,MAAA,IAAMC,OAAO,GAAG;AACdJ,QAAAA,IAAI,EAAEC,QAAQ;QACdI,MAAM,EAAA,CAAAH,cAAA,GAAE5E,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAAoH,cAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,cAAA,CAAcG,MAAM;QAC5BC,KAAK,EAAA,CAAAH,cAAA,GAAE7E,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAAqH,cAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,cAAA,CAAcG;OACtB;AACDtG,MAAAA,KAAK,CAACuG,gBAAgB,CAACH,OAAO,CAAC;AACjC,IAAA;AAAE,GACH,CAAC,eACFrH,KAAA,CAAAC,aAAA,CAAC6G,WAAW,EAAA;AACVvB,IAAAA,KAAK,EAAEpC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAE;AACzC4D,IAAAA,aAAa,EAAC,MAAM;IACpBC,KAAK,EAAA,CAAA7F,cAAA,GAAEoB,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAAoB,cAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,cAAA,CAAcmG,MAAO;IAC5BzB,QAAQ,EAAGqB,QAAQ,IAAK;MAAA,IAAAO,cAAA,EAAAC,cAAA;AACtB,MAAA,IAAML,OAAO,GAAG;QACdJ,IAAI,EAAA,CAAAQ,cAAA,GAAElF,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAA0H,cAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,cAAA,CAAcR,IAAI;AACxBK,QAAAA,MAAM,EAAEJ,QAAQ;QAChBK,KAAK,EAAA,CAAAG,cAAA,GAAEnF,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAA2H,cAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,cAAA,CAAcH;OACtB;AACDtG,MAAAA,KAAK,CAACuG,gBAAgB,CAACH,OAAO,CAAC;AACjC,IAAA;AAAE,GACH,CAAC,eACFrH,KAAA,CAAAC,aAAA,CAAC6G,WAAW,EAAA;AACVvB,IAAAA,KAAK,EAAEpC,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAE;AACxC4D,IAAAA,aAAa,EAAC,MAAM;IACpBC,KAAK,EAAA,CAAA5F,cAAA,GAAEmB,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAAqB,cAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,cAAA,CAAcmG,KAAM;IAC3B1B,QAAQ,EAAGqB,QAAQ,IAAK;MAAA,IAAAS,cAAA,EAAAC,cAAA;AACtB,MAAA,IAAMP,OAAO,GAAG;QACdJ,IAAI,EAAA,CAAAU,cAAA,GAAEpF,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAA4H,cAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,cAAA,CAAcV,IAAI;QACxBK,MAAM,EAAA,CAAAM,cAAA,GAAErF,OAAO,CAACxC,IAAI,MAAA,IAAA,IAAA6H,cAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,cAAA,CAAcN,MAAM;AAC5BC,QAAAA,KAAK,EAAEL;OACR;AACDjG,MAAAA,KAAK,CAACuG,gBAAgB,CAACH,OAAO,CAAC;AACjC,IAAA;AAAE,GACH,CACO,CACX,eAEDrH,KAAA,CAAAC,aAAA,CAAC4H,WAAW,EAAA;AACVhG,IAAAA,UAAU,EAAEA,UAAW;AACvBG,IAAAA,QAAQ,EAAEA,QAAS;IACnB8F,cAAc,EAAGC,SAAS,IAAK9G,KAAK,CAAC6G,cAAc,CAACC,SAAS,CAAE;AAC/DC,IAAAA,kBAAkB,EAAGnB,OAAO,IAAK5F,KAAK,CAAC+G,kBAAkB,CAACnB,OAAO;GAClE,CAAC,EAEDtE,OAAO,CAACE,SAAS,KAAK,MAAM,iBAC3BzC,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA0E,QAAA,EAAA,IAAA,EACG1C,QAAQ,gBACPhC,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,4BAA4B,EAAE,mBAAmB,CAAK,CAAC,gBAE9DnD,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,6BAA6B,EAAE,mBAAmB,CAAK,CAC/D,eACDnD,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAA;AAACgD,IAAAA,OAAO,EAAC,SAAS;AAAC7C,IAAAA,OAAO,EAAEZ;AAAc,GAAA,EAC9CrB,EAAE,CAAC,oBAAoB,EAAE,mBAAmB,CACvC,CAAC,EACRmB,eAAe,iBACdtE,KAAA,CAAAC,aAAA,CAACiI,KAAK,EAAA;AAACtD,IAAAA,KAAK,EAAC,oBAAoB;AAACuD,IAAAA,cAAc,EAAE1D;AAAe,GAAA,eAC/DzE,KAAA,CAAAC,aAAA,CAACmI,YAAY,EAAA;IACXvG,UAAU,EAAEU,OAAO,CAAC8F,SAAU;AAC9BvG,IAAAA,QAAQ,EAAEA,QAAS;IACnB+D,QAAQ,EAAGqB,QAAQ,IAAK;AACtBjG,MAAAA,KAAK,CAACqH,YAAY,CAACpB,QAAQ,CAAC;AAC9B,IAAA;AAAE,GACH,CACI,CAET,CACH,eACDlH,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKI,IAAAA,SAAS,EAAC;AAAkB,GAAA,eAC/BL,KAAA,CAAAC,aAAA,CAACsI,YAAY,EAAA;AACXhD,IAAAA,KAAK,EAAEpC,EAAE,CAAC,eAAe,EAAE,mBAAmB,CAAE;AAChDqF,IAAAA,QAAQ,EAAErG,YAAa;AACvBsG,IAAAA,OAAO,EAAE,CACP;AAAElD,MAAAA,KAAK,EAAEpC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;AAAE6D,MAAAA,KAAK,EAAE;AAAQ,KAAC,EAC5D;AACEzB,MAAAA,KAAK,EAAEpC,EAAE,CAAC,UAAU,EAAE,mBAAmB,CAAC;AAC1C6D,MAAAA,KAAK,EAAE;AACT,KAAC,EACD;AACEzB,MAAAA,KAAK,EAAEpC,EAAE,CAAC,UAAU,EAAE,mBAAmB,CAAC;AAC1C6D,MAAAA,KAAK,EAAE;AACT,KAAC,EACD;AAAEzB,MAAAA,KAAK,EAAEpC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC;AAAE6D,MAAAA,KAAK,EAAE;AAAQ,KAAC,EACzD;AAAEzB,MAAAA,KAAK,EAAEpC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;AAAE6D,MAAAA,KAAK,EAAE;AAAS,KAAC,CAC7D;IACFnB,QAAQ,EAAG6C,MAAM,IAAK;AACpBzH,MAAAA,KAAK,CAAC0H,gBAAgB,CAACD,MAAM,CAAC;AAChC,IAAA;AAAE,GACH,CACE,CAAC,EACLvG,YAAY,KAAK,UAAU,IAAI,CAACD,UAAU,iBACzClC,KAAA,CAAAC,aAAA,CAACyF,aAAa,EAAA;AACZH,IAAAA,KAAK,EAAEpC,EAAE,CACP,oCAAoC,EACpC,mBACF,CAAE;AACFwC,IAAAA,OAAO,EAAEvD,WAAY;IACrByD,QAAQ,EAAG6C,MAAM,IAAK;AACpBzH,MAAAA,KAAK,CAAC2H,mBAAmB,CAACF,MAAM,CAAC;AACnC,IAAA;GACD,CACF,EACA,CAAEvG,YAAY,KAAK,UAAU,IAAI,CAACC,WAAW,IAC5CD,YAAY,KAAK,OAAO,IACxBA,YAAY,KAAK,QAAQ,kBACzBnC,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA0E,QAAA,EAAA,IAAA,EACG1C,QAAQ,gBACPhC,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,wBAAwB,EAAE,mBAAmB,CAAK,CAAC,gBAE1DnD,KAAA,CAAAC,aAAA,YAAIkD,EAAE,CAAC,yBAAyB,EAAE,mBAAmB,CAAK,CAC3D,eACDnD,KAAA,CAAAC,aAAA,CAAC0E,SAAS,EAAA;AACRC,IAAAA,KAAK,EAAEzB,EAAE,CAAC,UAAU,EAAE,mBAAmB,CAAE;AAC3C0B,IAAAA,WAAW,EAAE;AAAK,GAAA,EAEjB,GAAAxD,iBAAA,GAACkB,OAAO,CAACsG,QAAQ,MAAA,IAAA,IAAAxH,iBAAA,KAAA,MAAA,IAAhBA,iBAAA,CAAkByH,YAAY,CAAA,iBAC9B9I,KAAA,CAAAC,aAAA,CAACwF,QAAQ,EAAA;AAACpF,IAAAA,SAAS,EAAC;AAAc,GAAA,eAChCL,KAAA,CAAAC,aAAA,CAAC8I,eAAe,EAAA;AACdN,IAAAA,OAAO,EAAE,CACP;AAAEzB,MAAAA,KAAK,EAAE,KAAK;AAAEzB,MAAAA,KAAK,EAAE;AAAM,KAAC,EAC9B;AAAEyB,MAAAA,KAAK,EAAE,QAAQ;AAAEzB,MAAAA,KAAK,EAAE;AAAS,KAAC,CACpC;AACFyB,IAAAA,KAAK,EAAE,CAAA,CAAA1F,kBAAA,GAAAiB,OAAO,CAACsG,QAAQ,MAAA,IAAA,IAAAvH,kBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,kBAAA,CAAkB0H,QAAQ,KAAI,KAAM;IAC3CnD,QAAQ,EAAGqB,QAAQ,IAAK;MACtB,IAAM+B,SAAS,GAAAC,cAAA,CAAAA,cAAA,CAAA,EAAA,EACT3G,OAAO,CAACsG,QAAQ,IAAI,EAAE,CAAA,EAAA,EAAA,EAAA;AAC1BG,QAAAA,QAAQ,EAAE9B;OAAQ,CACnB;AACDjG,MAAAA,KAAK,CAACkI,gBAAgB,CAACF,SAAS,CAAC;AACnC,IAAA;AAAE,GACH,CAAC,eACFjJ,KAAA,CAAAC,aAAA,CAACmJ,yBAAW,EAAA;AACVC,IAAAA,aAAa,EAAC,GAAG;IACjBxD,QAAQ,EAAGqB,QAAQ,IAAK;MACtB,IAAM+B,SAAS,GAAAC,cAAA,CAAAA,cAAA,CAAA,EAAA,EACT3G,OAAO,CAACsG,QAAQ,IAAI,EAAE,CAAA,EAAA,EAAA,EAAA;AAC1BS,QAAAA,SAAS,EAAEpC;OAAQ,CACpB;AACDjG,MAAAA,KAAK,CAACkI,gBAAgB,CAACF,SAAS,CAAC;IACnC,CAAE;AACFjC,IAAAA,KAAK,EAAE,CAAA,CAAAzF,kBAAA,GAAAgB,OAAO,CAACsG,QAAQ,MAAA,IAAA,IAAAtH,kBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,kBAAA,CAAkB+H,SAAS,KAAI;GACvC,CACO,CACX,EACA,CAACpH,UAAU,iBACVlC,KAAA,CAAAC,aAAA,CAACyF,aAAa,EAAA;AACZH,IAAAA,KAAK,EAAEpC,EAAE,CAAC,WAAW,EAAE,mBAAmB,CAAE;IAC5CwC,OAAO,EAAA,CAAAnE,kBAAA,GAAEe,OAAO,CAACsG,QAAQ,MAAA,IAAA,IAAArH,kBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,kBAAA,CAAkBsH,YAAa;IACxCjD,QAAQ,EAAGqB,QAAQ,IAAK;MACtB,IAAM+B,SAAS,GAAAC,cAAA,CAAAA,cAAA,CAAA,EAAA,EACT3G,OAAO,CAACsG,QAAQ,IAAI,EAAE,CAAA,EAAA,EAAA,EAAA;AAC1BC,QAAAA,YAAY,EAAE5B;OAAQ,CACvB;AACDjG,MAAAA,KAAK,CAACkI,gBAAgB,CAACF,SAAS,CAAC;AACnC,IAAA;AAAE,GACH,CAEM,CAAC,eAEZjJ,KAAA,CAAAC,aAAA,CAAC0E,SAAS,EAAA;AACRC,IAAAA,KAAK,EAAEzB,EAAE,CAAC,SAAS,EAAE,mBAAmB,CAAE;AAC1C0B,IAAAA,WAAW,EAAE;AAAK,GAAA,EAEjB,GAAApD,kBAAA,GAACc,OAAO,CAACsG,QAAQ,MAAA,IAAA,IAAApH,kBAAA,KAAA,MAAA,IAAhBA,kBAAA,CAAkB8H,WAAW,CAAA,iBAC7BvJ,KAAA,CAAAC,aAAA,CAACwF,QAAQ,EAAA;AAACpF,IAAAA,SAAS,EAAC;AAAc,GAAA,eAChCL,KAAA,CAAAC,aAAA,CAAC8I,eAAe,EAAA;AACdN,IAAAA,OAAO,EAAE,CACP;AAAEzB,MAAAA,KAAK,EAAE,MAAM;AAAEzB,MAAAA,KAAK,EAAE;AAAO,KAAC,EAChC;AAAEyB,MAAAA,KAAK,EAAE,OAAO;AAAEzB,MAAAA,KAAK,EAAE;AAAQ,KAAC,CAClC;AACFyB,IAAAA,KAAK,EAAE,CAAA,CAAAtF,kBAAA,GAAAa,OAAO,CAACsG,QAAQ,MAAA,IAAA,IAAAnH,kBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,kBAAA,CAAkB8H,OAAO,KAAI,MAAO;IAC3C3D,QAAQ,EAAGqB,QAAQ,IAAK;MACtB,IAAM+B,SAAS,GAAAC,cAAA,CAAAA,cAAA,CAAA,EAAA,EACT3G,OAAO,CAACsG,QAAQ,IAAI,EAAE,CAAA,EAAA,EAAA,EAAA;AAC1BW,QAAAA,OAAO,EAAEtC;OAAQ,CAClB;AACDjG,MAAAA,KAAK,CAACkI,gBAAgB,CAACF,SAAS,CAAC;AACnC,IAAA;AAAE,GACH,CAAC,eACFjJ,KAAA,CAAAC,aAAA,CAACmJ,yBAAW,EAAA;AACVC,IAAAA,aAAa,EAAC,GAAG;IACjBxD,QAAQ,EAAGqB,QAAQ,IAAK;MACtB,IAAM+B,SAAS,GAAAC,cAAA,CAAAA,cAAA,CAAA,EAAA,EACT3G,OAAO,CAACsG,QAAQ,IAAI,EAAE,CAAA,EAAA,EAAA,EAAA;AAC1BY,QAAAA,QAAQ,EAAEvC;OAAQ,CACnB;AACDjG,MAAAA,KAAK,CAACkI,gBAAgB,CAACF,SAAS,CAAC;IACnC,CAAE;AACFjC,IAAAA,KAAK,EAAE,CAAA,CAAArF,kBAAA,GAAAY,OAAO,CAACsG,QAAQ,MAAA,IAAA,IAAAlH,kBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,kBAAA,CAAkB8H,QAAQ,KAAI;GACtC,CACO,CACX,EACA,CAACvH,UAAU,iBACVlC,KAAA,CAAAC,aAAA,CAACyF,aAAa,EAAA;AACZH,IAAAA,KAAK,EAAEpC,EAAE,CAAC,WAAW,EAAE,mBAAmB,CAAE;IAC5CwC,OAAO,EAAA,CAAA/D,kBAAA,GAAEW,OAAO,CAACsG,QAAQ,MAAA,IAAA,IAAAjH,kBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,kBAAA,CAAkB2H,WAAY;IACvC1D,QAAQ,EAAGqB,QAAQ,IAAK;MACtB,IAAM+B,SAAS,GAAAC,cAAA,CAAAA,cAAA,CAAA,EAAA,EACT3G,OAAO,CAACsG,QAAQ,IAAI,EAAE,CAAA,EAAA,EAAA,EAAA;AAC1BU,QAAAA,WAAW,EAAErC;OAAQ,CACtB;AACDjG,MAAAA,KAAK,CAACkI,gBAAgB,CAACF,SAAS,CAAC;AACnC,IAAA;AAAE,GACH,CAEM,CACX,CAEK,CACX,CAAC;AAEP;AAEO,SAASzC,UAAUA,CAACvF,KAAK,EAAE;EAChC,IAAM;IAAEY,UAAU;IAAEG,QAAQ;IAAEqC,aAAa;AAAEpC,IAAAA;AAAU,GAAC,GAAGhB,KAAK;EAChE,IAAM;IAAEoB,WAAW;AAAEC,IAAAA;AAAW,GAAC,GAAGT,UAAU;;AAE9C;AACA,EAAA,IAAMU,OAAO,GAAGP,QAAQ,GAAGM,UAAU,GAAGD,WAAW;;AAEnD;AACA,EAAA,IAAMqH,mBAAmB,GAAGvG,EAAE,CAC5B,yBAAyB,EACzB,mBACF,CAAC;AACD,EAAA,IAAMwG,gBAAgB,GAAGxG,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;AACvE,EAAA,IAAMyG,oBAAoB,GAAGzG,EAAE,CAC7B,0BAA0B,EAC1B,mBACF,CAAC;AACD,EAAA,IAAM0G,iBAAiB,GAAG1G,EAAE,CAAC,sBAAsB,EAAE,mBAAmB,CAAC;;AAEzE;AACA,EAAA,IAAM2G,UAAU,GAAG9H,QAAQ,GAAG2H,gBAAgB,GAAGE,iBAAiB;AAClE,EAAA,IAAME,aAAa,GAAG/H,QAAQ,GAAG0H,mBAAmB,GAAGE,oBAAoB;AAC3E,EAAA,oBACE5J,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA0E,QAAA,EAAA,IAAA,eACE1E,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAI6J,UAAc,CAAC,eACnB9J,KAAA,CAAAC,aAAA,CAAC6E,YAAY,qBACX9E,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACyH,SAAS,KAAK,MAAO;IACxC5E,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,MAAM,CAAE;AACxDwD,IAAAA,IAAI,EAAC;AAAM,GAAA,CACZ,CAEQ,CAAC,eACdjK,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACyH,SAAS,KAAK,KAAM;IACvC5E,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,KAAK,CAAE;AACvDwD,IAAAA,IAAI,EAAC;AAAK,GAAA,CACX,CAEQ,CAAC,eACdjK,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACyH,SAAS,KAAK,UAAW;IAC5C5E,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,UAAU,CAAE;AAC5DtG,IAAAA,IAAI,EAAE+J,WAAY;AAClB3E,IAAAA,KAAK,EAAEpC,EAAE,CAAC,WAAW,EAAE,mBAAmB;AAAE,GAAA,CAC7C,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACyH,SAAS,KAAK,aAAc;IAC/C5E,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,aAAa,CAAE;AAC/DtG,IAAAA,IAAI,EAAEgK,cAAe;AACrB5E,IAAAA,KAAK,EAAEpC,EAAE,CAAC,cAAc,EAAE,mBAAmB;AAAE,GAAA,CAChD,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACyH,SAAS,KAAK,MAAO;IACxC5E,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,MAAM,CAAE;AACxDwD,IAAAA,IAAI,EAAC;AAAM,GAAA,CACZ,CAEQ,CACD,CAAC,EAEd1H,OAAO,CAACyH,SAAS,KAAK,MAAM,iBAC3BhK,KAAA,CAAAC,aAAA,CAACmJ,yBAAW,EAAA;AACVC,IAAAA,aAAa,EAAC,GAAG;IACjBxD,QAAQ,EAAGqB,QAAQ,IACjBjG,KAAK,CAAC2F,iBAAiB,CAAC,YAAY,EAAEM,QAAQ,CAC/C;IACDF,KAAK,EAAEzE,OAAO,CAAC6H;AAAW,GAC3B,CACF,eACDpK,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAI8J,aAAiB,CAAC,eACtB/J,KAAA,CAAAC,aAAA,CAAC6E,YAAY,EAAA,IAAA,eACX9E,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC8H,SAAS,KAAK,MAAO;IACxCjF,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,MAAM,CAAE;AACxDwD,IAAAA,IAAI,EAAC;AAAM,GAAA,CACZ,CAEQ,CAAC,eACdjK,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC8H,SAAS,KAAK,KAAM;IACvCjF,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,KAAK,CAAE;AACvDwD,IAAAA,IAAI,EAAC;AAAK,GAAA,CACX,CAEQ,CAAC,eACdjK,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC8H,SAAS,KAAK,UAAW;IAC5CjF,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,UAAU,CAAE;AAC5DtG,IAAAA,IAAI,EAAE+J,WAAY;AAClB3E,IAAAA,KAAK,EAAEpC,EAAE,CAAC,WAAW,EAAE,mBAAmB;AAAE,GAAA,CAC7C,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC8H,SAAS,KAAK,aAAc;IAC/CjF,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,aAAa,CAAE;AAC/DtG,IAAAA,IAAI,EAAEgK,cAAe;AACrB5E,IAAAA,KAAK,EAAEpC,EAAE,CAAC,cAAc,EAAE,mBAAmB;AAAE,GAAA,CAChD,CAEQ,CAAC,eACdnD,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAAC8H,SAAS,KAAK,MAAO;IACxCjF,OAAO,EAAEA,MAAMnE,KAAK,CAACwF,aAAa,CAAC,WAAW,EAAE,MAAM,CAAE;AACxDwD,IAAAA,IAAI,EAAC;AAAM,GAAA,CACZ,CAEQ,CACD,CAAC,EAEd1H,OAAO,CAAC8H,SAAS,KAAK,MAAM,iBAC3BrK,KAAA,CAAAC,aAAA,CAACmJ,yBAAW,EAAA;AACVC,IAAAA,aAAa,EAAC,GAAG;IACjBxD,QAAQ,EAAGqB,QAAQ,IACjBjG,KAAK,CAAC2F,iBAAiB,CAAC,gBAAgB,EAAEM,QAAQ,CACnD;IACDF,KAAK,EAAEzE,OAAO,CAAC+H;AAAe,GAC/B,CAEH,CAAC;AAEP;AAEO,SAASzC,WAAWA,CAAC5G,KAAK,EAAE;EACjC,IAAM;IAAEY,UAAU;AAAEG,IAAAA;AAAS,GAAC,GAAGf,KAAK;EACtC,IAAM;IAAEoB,WAAW;AAAEC,IAAAA;AAAW,GAAC,GAAGT,UAAU;;AAE9C;AACA,EAAA,IAAMU,OAAO,GAAGP,QAAQ,GAAGM,UAAU,GAAGD,WAAW;EAEnD,oBACErC,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAA0E,QAAA,EAAA,IAAA,EACG1C,QAAQ,gBACPhC,KAAA,CAAAC,aAAA,YAAIkD,EAAE,CAAC,sBAAsB,EAAE,mBAAmB,CAAK,CAAC,gBAExDnD,KAAA,CAAAC,aAAA,CAAA,GAAA,EAAA,IAAA,EAAIkD,EAAE,CAAC,uBAAuB,EAAE,mBAAmB,CAAK,CACzD,eACDnD,KAAA,CAAAC,aAAA,CAAC6E,YAAY,EAAA,IAAA,eACX9E,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,CAAA,EAAA,EACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACgI,UAAU,KAAK,MAAO;IACzCnF,OAAO,EAAEA,MAAMnE,KAAK,CAAC6G,cAAc,CAAC,MAAM,CAAE;AAC5CmC,IAAAA,IAAI,EAAC;AAAM,GAAA,CACZ,CAEQ,CAAC,eACdjK,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACgI,UAAU,KAAK,KAAM;IACxCnF,OAAO,EAAEA,MAAMnE,KAAK,CAAC6G,cAAc,CAAC,KAAK,CAAE;AAC3CmC,IAAAA,IAAI,EAAC;AAAK,GAAA,CACX,CAEQ,CAAC,eACdjK,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACgI,UAAU,KAAK,MAAO;IACzCnF,OAAO,EAAEA,MAAMnE,KAAK,CAAC6G,cAAc,CAAC,MAAM,CAAE;AAC5CmC,IAAAA,IAAI,EAAC;AAAM,GAAA,CACZ,CAEQ,CAAC,eACdjK,KAAA,CAAAC,aAAA,CAAC8E,WAAW,EAAA,IAAA,EACRC,SAAS,iBACThF,KAAA,CAAAC,aAAA,CAACgF,MAAM,EAAAC,QAAA,KACDF,SAAS,EAAA;AACbG,IAAAA,SAAS,EAAE5C,OAAO,CAACgI,UAAU,KAAK,MAAO;IACzCnF,OAAO,EAAEA,MAAMnE,KAAK,CAAC6G,cAAc,CAAC,MAAM,CAAE;AAC5CmC,IAAAA,IAAI,EAAC;AAAM,GAAA,CACZ,CAEQ,CACD,CAAC,EACd1H,OAAO,CAACgI,UAAU,KAAK,MAAM,iBAC5BvK,KAAA,CAAAC,aAAA,CAACmJ,yBAAW,EAAA;AACVC,IAAAA,aAAa,EAAC,GAAG;IACjBxD,QAAQ,EAAGqB,QAAQ,IAAKjG,KAAK,CAAC+G,kBAAkB,CAACd,QAAQ,CAAE;IAC3DF,KAAK,EAAEzE,OAAO,CAACiI;AAAY,GAC5B,CAEH,CAAC;AAEP;;;;"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import { objectSpread2 as _objectSpread2 } from './_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { flattenBlocks, createBlockTree, serializeBlockTree } from './blockStore.js';
|
|
3
|
+
import { createBlock, getBlockType } from '@wordpress/blocks';
|
|
4
|
+
import { useEffect } from '@wordpress/element';
|
|
5
|
+
import { useDispatch, useSelect } from '@wordpress/data';
|
|
6
|
+
|
|
7
|
+
//フィールド生成用関数
|
|
8
|
+
var createBlockAttr = selectedField => {
|
|
9
|
+
var _blockType$attributes, _blockType$attributes2, _blockType$attributes3, _blockType$attributes4;
|
|
10
|
+
var blockAttributes = {};
|
|
11
|
+
switch (selectedField.block) {
|
|
12
|
+
case "itmar/design-title":
|
|
13
|
+
var block_class = selectedField.key.startsWith("tax_") ? selectedField.key : "sp_field_".concat(selectedField.key);
|
|
14
|
+
blockAttributes = {
|
|
15
|
+
className: block_class,
|
|
16
|
+
headingContent: "[".concat(selectedField.label, "]")
|
|
17
|
+
};
|
|
18
|
+
break;
|
|
19
|
+
case "core/paragraph":
|
|
20
|
+
blockAttributes = {
|
|
21
|
+
className: "itmar_ex_block sp_field_".concat(selectedField.key),
|
|
22
|
+
content: "[".concat(selectedField.label, "]")
|
|
23
|
+
};
|
|
24
|
+
break;
|
|
25
|
+
case "core/image":
|
|
26
|
+
blockAttributes = {
|
|
27
|
+
className: "itmar_ex_block sp_field_".concat(selectedField.key),
|
|
28
|
+
url: "".concat(itmar_option.plugin_url, "/assets/image/main_sample.png")
|
|
29
|
+
};
|
|
30
|
+
break;
|
|
31
|
+
case "itmar/slide-mv":
|
|
32
|
+
var spaceAttributes = {
|
|
33
|
+
margin_val: {
|
|
34
|
+
type: "object",
|
|
35
|
+
default: {
|
|
36
|
+
top: "0em",
|
|
37
|
+
left: "0em",
|
|
38
|
+
bottom: "0em",
|
|
39
|
+
right: "0em"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
padding_val: {
|
|
43
|
+
type: "object",
|
|
44
|
+
default: {
|
|
45
|
+
top: "0em",
|
|
46
|
+
left: "0em",
|
|
47
|
+
bottom: "0em",
|
|
48
|
+
right: "0em"
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
var imageBlock = createBlock("core/image", _objectSpread2({
|
|
53
|
+
className: "itmar_ex_block",
|
|
54
|
+
url: "".concat(itmar_option.plugin_url, "/assets/image/slide_sample.png")
|
|
55
|
+
}, spaceAttributes));
|
|
56
|
+
//Design Blockの初期設定を取得
|
|
57
|
+
var blockType = getBlockType("itmar/design-group");
|
|
58
|
+
var defaultValBase = (_blockType$attributes = blockType === null || blockType === void 0 || (_blockType$attributes2 = blockType.attributes) === null || _blockType$attributes2 === void 0 || (_blockType$attributes2 = _blockType$attributes2.default_val) === null || _blockType$attributes2 === void 0 ? void 0 : _blockType$attributes2.default) !== null && _blockType$attributes !== void 0 ? _blockType$attributes : {};
|
|
59
|
+
var mobileValBase = (_blockType$attributes3 = blockType === null || blockType === void 0 || (_blockType$attributes4 = blockType.attributes) === null || _blockType$attributes4 === void 0 || (_blockType$attributes4 = _blockType$attributes4.mobile_val) === null || _blockType$attributes4 === void 0 ? void 0 : _blockType$attributes4.default) !== null && _blockType$attributes3 !== void 0 ? _blockType$attributes3 : {};
|
|
60
|
+
var slideBlock = createBlock("itmar/design-group", {
|
|
61
|
+
default_val: _objectSpread2(_objectSpread2({}, defaultValBase), {}, {
|
|
62
|
+
width_val: "fit"
|
|
63
|
+
}),
|
|
64
|
+
mobile_val: _objectSpread2(_objectSpread2({}, mobileValBase), {}, {
|
|
65
|
+
width_val: "fit"
|
|
66
|
+
})
|
|
67
|
+
}, [imageBlock]);
|
|
68
|
+
//slideBlock をシリアライズ
|
|
69
|
+
var serializedSlide = serializeBlockTree(slideBlock);
|
|
70
|
+
// 同じスライドブロックを5つ複製(独立したブロックとして)
|
|
71
|
+
var slideBlocks = Array.from({
|
|
72
|
+
length: 5
|
|
73
|
+
}, () => createBlockTree(serializedSlide));
|
|
74
|
+
//子ブロック付きで返す
|
|
75
|
+
blockAttributes = {
|
|
76
|
+
attributes: {
|
|
77
|
+
className: "sp_field_".concat(selectedField.key)
|
|
78
|
+
},
|
|
79
|
+
slideBlocks: slideBlocks
|
|
80
|
+
};
|
|
81
|
+
break;
|
|
82
|
+
default:
|
|
83
|
+
blockAttributes = {
|
|
84
|
+
className: "sp_field_".concat(selectedField.key),
|
|
85
|
+
headingContent: "[".concat(selectedField.label, "]")
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
return blockAttributes;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
//表示フィールド変更によるインナーブロックの再構成
|
|
92
|
+
var useRebuildChangeField = (dispAttributeArray, selectedFields, pickupType, dispTaxonomies, sectionCount, domType, clientId, insertId) => {
|
|
93
|
+
// dispatch関数を取得
|
|
94
|
+
var {
|
|
95
|
+
replaceInnerBlocks
|
|
96
|
+
} = useDispatch("core/block-editor");
|
|
97
|
+
var pickupBlock = useSelect(select => select("core/block-editor").getBlock(clientId), [clientId]);
|
|
98
|
+
useEffect(() => {
|
|
99
|
+
//dispAttributeArray の個数調整
|
|
100
|
+
var blocksLength = dispAttributeArray.length;
|
|
101
|
+
if (blocksLength < sectionCount) {
|
|
102
|
+
// dispAttributeArrayの長さが短い場合、{}を追加する
|
|
103
|
+
var diff = sectionCount - blocksLength;
|
|
104
|
+
for (var i = 0; i < diff; i++) {
|
|
105
|
+
dispAttributeArray.push({});
|
|
106
|
+
}
|
|
107
|
+
} else {
|
|
108
|
+
// dispAttributeArrayの長さが長い場合、余分な要素を削除する
|
|
109
|
+
dispAttributeArray.splice(sectionCount);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
// インナーブロックに差し込むブロック配列を生成
|
|
113
|
+
var blocksArray = dispAttributeArray.map((dispAttribute, unit_index) => {
|
|
114
|
+
// blocksAttributesArray属性で登録されたブロックのclassName一覧(sp_field_xxx を拾う)
|
|
115
|
+
var allBlocks = Array.isArray(dispAttribute.innerBlocks) ? flattenBlocks(dispAttribute.innerBlocks) //階層になったブロックを平坦化
|
|
116
|
+
: [];
|
|
117
|
+
var existingKeys = allBlocks.map(block => {
|
|
118
|
+
var _block$attributes;
|
|
119
|
+
return (_block$attributes = block.attributes) === null || _block$attributes === void 0 ? void 0 : _block$attributes.className;
|
|
120
|
+
}).filter(Boolean).map(cls => {
|
|
121
|
+
var _match$;
|
|
122
|
+
// sp_field_◯◯ か tax_◯◯ のどちらかにマッチ
|
|
123
|
+
var match = cls.match(/sp_field_([\w-]+)|(tax_[\w-]+)/);
|
|
124
|
+
if (!match) return null;
|
|
125
|
+
|
|
126
|
+
// match[1] があれば sp_field_ のほう → プレフィックス除去
|
|
127
|
+
// match[2] があれば tax_ のほう → そのまま返す
|
|
128
|
+
return (_match$ = match[1]) !== null && _match$ !== void 0 ? _match$ : match[2];
|
|
129
|
+
}).filter(Boolean);
|
|
130
|
+
|
|
131
|
+
// dispTaxonomies からオブジェクトを作って selectedFieldsに加えてnewSelectedFieldsを生成
|
|
132
|
+
var newSelectedFields = [...selectedFields, ...dispTaxonomies.map(tax => ({
|
|
133
|
+
key: "tax_".concat(tax),
|
|
134
|
+
// 例: "tax_category"
|
|
135
|
+
label: tax,
|
|
136
|
+
// 例: "category"
|
|
137
|
+
block: "itmar/design-title"
|
|
138
|
+
}))];
|
|
139
|
+
|
|
140
|
+
// newSelectedFieldsのうち未挿入のものだけ追加
|
|
141
|
+
var autoGeneratedBlocks = newSelectedFields.filter(field => !existingKeys.includes(field.key)).map(field => {
|
|
142
|
+
var _attr$attributes;
|
|
143
|
+
var attr = createBlockAttr(field);
|
|
144
|
+
var blockName = field.block;
|
|
145
|
+
var blockAttributes = (_attr$attributes = attr === null || attr === void 0 ? void 0 : attr.attributes) !== null && _attr$attributes !== void 0 ? _attr$attributes : attr;
|
|
146
|
+
var innerBlocks = Array.isArray(attr === null || attr === void 0 ? void 0 : attr.slideBlocks) ? attr.slideBlocks : [];
|
|
147
|
+
return createBlock(blockName, blockAttributes, innerBlocks);
|
|
148
|
+
});
|
|
149
|
+
// blocksAttributesArray属性で登録されたブロックの再構築
|
|
150
|
+
var selectedKeys = selectedFields.map(f => f.key);
|
|
151
|
+
var filterBlocksRecursively = blocks => {
|
|
152
|
+
return blocks.map(block => {
|
|
153
|
+
var _block$attributes2;
|
|
154
|
+
var className = ((_block$attributes2 = block.attributes) === null || _block$attributes2 === void 0 ? void 0 : _block$attributes2.className) || "";
|
|
155
|
+
// 1. まず sp_field_ のパターンを探す
|
|
156
|
+
var match = className.match(/sp_field_([a-zA-Z0-9_]+)/);
|
|
157
|
+
// 2. 見つからなければ tax_○○ をチェック
|
|
158
|
+
if (className.startsWith("tax_")) {
|
|
159
|
+
var name = className.slice("tax_".length); // "tax_category" → "category"
|
|
160
|
+
|
|
161
|
+
// dispTaxonomies に含まれないものだけ有効とする
|
|
162
|
+
if (!dispTaxonomies.includes(name)) {
|
|
163
|
+
// 正規表現の match 結果っぽい形の配列を自分で作る
|
|
164
|
+
// [0] に全体一致, [1] にグループ1 というイメージ
|
|
165
|
+
match = ["tax_".concat(name), name];
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// 再帰的に innerBlocks をフィルタ
|
|
170
|
+
var filteredInner = block.innerBlocks ? filterBlocksRecursively(block.innerBlocks) : [];
|
|
171
|
+
var isAutoGenerated = !!match;
|
|
172
|
+
var keep = !isAutoGenerated || selectedKeys.includes(match[1]);
|
|
173
|
+
if (!keep) return null;
|
|
174
|
+
|
|
175
|
+
// 構造を復元して返す
|
|
176
|
+
return _objectSpread2(_objectSpread2({}, block), {}, {
|
|
177
|
+
innerBlocks: filteredInner
|
|
178
|
+
});
|
|
179
|
+
}).filter(Boolean); // null を除去
|
|
180
|
+
};
|
|
181
|
+
var userBlocks = Array.isArray(dispAttribute.innerBlocks) ? filterBlocksRecursively(dispAttribute.innerBlocks).map(createBlockTree) : [];
|
|
182
|
+
|
|
183
|
+
// autoGenerated(selectedFields) + userBlocks を合成
|
|
184
|
+
var innerBlocks = [...userBlocks, ...autoGeneratedBlocks];
|
|
185
|
+
var ret = createBlock("itmar/design-group", _objectSpread2(_objectSpread2({}, dispAttribute.attributes), {}, {
|
|
186
|
+
className: "unit_design_".concat(unit_index),
|
|
187
|
+
domType: domType
|
|
188
|
+
}), innerBlocks);
|
|
189
|
+
return ret;
|
|
190
|
+
});
|
|
191
|
+
|
|
192
|
+
//挿入するブロックと自身のブロックが異なる場合(slide-mvにデータを入れる場合)
|
|
193
|
+
if (insertId !== clientId) {
|
|
194
|
+
blocksArray.push(pickupBlock);
|
|
195
|
+
}
|
|
196
|
+
// 既存のインナーブロックを一括置換
|
|
197
|
+
replaceInnerBlocks(insertId, blocksArray, false);
|
|
198
|
+
}, [selectedFields, pickupType, dispTaxonomies]);
|
|
199
|
+
};
|
|
200
|
+
|
|
201
|
+
export { useRebuildChangeField };
|
|
202
|
+
//# sourceMappingURL=BrockInserter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrockInserter.js","sources":["../../src/BrockInserter.js"],"sourcesContent":["import {\r\n serializeBlockTree,\r\n createBlockTree,\r\n flattenBlocks,\r\n} from \"./blockStore\";\r\nimport { createBlock, getBlockType } from \"@wordpress/blocks\";\r\nimport { useEffect } from \"@wordpress/element\";\r\nimport { useSelect, useDispatch } from \"@wordpress/data\";\r\n\r\n//フィールド生成用関数\r\nconst createBlockAttr = (selectedField) => {\r\n let blockAttributes = {};\r\n switch (selectedField.block) {\r\n case \"itmar/design-title\":\r\n const block_class = selectedField.key.startsWith(\"tax_\")\r\n ? selectedField.key\r\n : `sp_field_${selectedField.key}`;\r\n blockAttributes = {\r\n className: block_class,\r\n headingContent: `[${selectedField.label}]`,\r\n };\r\n\r\n break;\r\n case \"core/paragraph\":\r\n blockAttributes = {\r\n className: `itmar_ex_block sp_field_${selectedField.key}`,\r\n content: `[${selectedField.label}]`,\r\n };\r\n break;\r\n case \"core/image\":\r\n blockAttributes = {\r\n className: `itmar_ex_block sp_field_${selectedField.key}`,\r\n url: `${itmar_option.plugin_url}/assets/image/main_sample.png`,\r\n };\r\n break;\r\n case \"itmar/slide-mv\":\r\n const spaceAttributes = {\r\n margin_val: {\r\n type: \"object\",\r\n default: {\r\n top: \"0em\",\r\n left: \"0em\",\r\n bottom: \"0em\",\r\n right: \"0em\",\r\n },\r\n },\r\n padding_val: {\r\n type: \"object\",\r\n default: {\r\n top: \"0em\",\r\n left: \"0em\",\r\n bottom: \"0em\",\r\n right: \"0em\",\r\n },\r\n },\r\n };\r\n\r\n const imageBlock = createBlock(\"core/image\", {\r\n className: \"itmar_ex_block\",\r\n url: `${itmar_option.plugin_url}/assets/image/slide_sample.png`,\r\n ...spaceAttributes,\r\n });\r\n //Design Blockの初期設定を取得\r\n const blockType = getBlockType(\"itmar/design-group\");\r\n const defaultValBase = blockType?.attributes?.default_val?.default ?? {};\r\n const mobileValBase = blockType?.attributes?.mobile_val?.default ?? {};\r\n const slideBlock = createBlock(\r\n \"itmar/design-group\",\r\n {\r\n default_val: {\r\n ...defaultValBase,\r\n width_val: \"fit\",\r\n },\r\n mobile_val: {\r\n ...mobileValBase,\r\n width_val: \"fit\",\r\n },\r\n },\r\n [imageBlock],\r\n );\r\n //slideBlock をシリアライズ\r\n const serializedSlide = serializeBlockTree(slideBlock);\r\n // 同じスライドブロックを5つ複製(独立したブロックとして)\r\n const slideBlocks = Array.from({ length: 5 }, () =>\r\n createBlockTree(serializedSlide),\r\n );\r\n //子ブロック付きで返す\r\n blockAttributes = {\r\n attributes: { className: `sp_field_${selectedField.key}` },\r\n slideBlocks: slideBlocks,\r\n };\r\n break;\r\n default:\r\n blockAttributes = {\r\n className: `sp_field_${selectedField.key}`,\r\n headingContent: `[${selectedField.label}]`,\r\n };\r\n }\r\n return blockAttributes;\r\n};\r\n\r\n//表示フィールド変更によるインナーブロックの再構成\r\nexport const useRebuildChangeField = (\r\n dispAttributeArray,\r\n selectedFields,\r\n pickupType,\r\n dispTaxonomies,\r\n sectionCount,\r\n domType,\r\n clientId,\r\n insertId,\r\n) => {\r\n // dispatch関数を取得\r\n const { replaceInnerBlocks } = useDispatch(\"core/block-editor\");\r\n const pickupBlock = useSelect(\r\n (select) => select(\"core/block-editor\").getBlock(clientId),\r\n [clientId],\r\n );\r\n\r\n useEffect(() => {\r\n //dispAttributeArray の個数調整\r\n const blocksLength = dispAttributeArray.length;\r\n if (blocksLength < sectionCount) {\r\n // dispAttributeArrayの長さが短い場合、{}を追加する\r\n const diff = sectionCount - blocksLength;\r\n for (let i = 0; i < diff; i++) {\r\n dispAttributeArray.push({});\r\n }\r\n } else {\r\n // dispAttributeArrayの長さが長い場合、余分な要素を削除する\r\n dispAttributeArray.splice(sectionCount);\r\n }\r\n\r\n // インナーブロックに差し込むブロック配列を生成\r\n const blocksArray = dispAttributeArray.map((dispAttribute, unit_index) => {\r\n // blocksAttributesArray属性で登録されたブロックのclassName一覧(sp_field_xxx を拾う)\r\n const allBlocks = Array.isArray(dispAttribute.innerBlocks)\r\n ? flattenBlocks(dispAttribute.innerBlocks) //階層になったブロックを平坦化\r\n : [];\r\n\r\n const existingKeys = allBlocks\r\n .map((block) => block.attributes?.className)\r\n .filter(Boolean)\r\n .map((cls) => {\r\n // sp_field_◯◯ か tax_◯◯ のどちらかにマッチ\r\n const match = cls.match(/sp_field_([\\w-]+)|(tax_[\\w-]+)/);\r\n if (!match) return null;\r\n\r\n // match[1] があれば sp_field_ のほう → プレフィックス除去\r\n // match[2] があれば tax_ のほう → そのまま返す\r\n return match[1] ?? match[2];\r\n })\r\n .filter(Boolean);\r\n\r\n // dispTaxonomies からオブジェクトを作って selectedFieldsに加えてnewSelectedFieldsを生成\r\n const newSelectedFields = [\r\n ...selectedFields,\r\n ...dispTaxonomies.map((tax) => ({\r\n key: `tax_${tax}`, // 例: \"tax_category\"\r\n label: tax, // 例: \"category\"\r\n block: \"itmar/design-title\",\r\n })),\r\n ];\r\n\r\n // newSelectedFieldsのうち未挿入のものだけ追加\r\n const autoGeneratedBlocks = newSelectedFields\r\n .filter((field) => !existingKeys.includes(field.key))\r\n .map((field) => {\r\n const attr = createBlockAttr(field);\r\n const blockName = field.block;\r\n const blockAttributes = attr?.attributes ?? attr;\r\n const innerBlocks = Array.isArray(attr?.slideBlocks)\r\n ? attr.slideBlocks\r\n : [];\r\n\r\n return createBlock(blockName, blockAttributes, innerBlocks);\r\n });\r\n // blocksAttributesArray属性で登録されたブロックの再構築\r\n const selectedKeys = selectedFields.map((f) => f.key);\r\n\r\n const filterBlocksRecursively = (blocks) => {\r\n return blocks\r\n .map((block) => {\r\n const className = block.attributes?.className || \"\";\r\n // 1. まず sp_field_ のパターンを探す\r\n let match = className.match(/sp_field_([a-zA-Z0-9_]+)/);\r\n // 2. 見つからなければ tax_○○ をチェック\r\n if (className.startsWith(\"tax_\")) {\r\n const name = className.slice(\"tax_\".length); // \"tax_category\" → \"category\"\r\n\r\n // dispTaxonomies に含まれないものだけ有効とする\r\n if (!dispTaxonomies.includes(name)) {\r\n // 正規表現の match 結果っぽい形の配列を自分で作る\r\n // [0] に全体一致, [1] にグループ1 というイメージ\r\n match = [`tax_${name}`, name];\r\n }\r\n }\r\n\r\n // 再帰的に innerBlocks をフィルタ\r\n const filteredInner = block.innerBlocks\r\n ? filterBlocksRecursively(block.innerBlocks)\r\n : [];\r\n\r\n const isAutoGenerated = !!match;\r\n const keep = !isAutoGenerated || selectedKeys.includes(match[1]);\r\n\r\n if (!keep) return null;\r\n\r\n // 構造を復元して返す\r\n return {\r\n ...block,\r\n innerBlocks: filteredInner,\r\n };\r\n })\r\n .filter(Boolean); // null を除去\r\n };\r\n\r\n const userBlocks = Array.isArray(dispAttribute.innerBlocks)\r\n ? filterBlocksRecursively(dispAttribute.innerBlocks).map(\r\n createBlockTree,\r\n )\r\n : [];\r\n\r\n // autoGenerated(selectedFields) + userBlocks を合成\r\n const innerBlocks = [...userBlocks, ...autoGeneratedBlocks];\r\n\r\n const ret = createBlock(\r\n \"itmar/design-group\",\r\n {\r\n ...dispAttribute.attributes,\r\n className: `unit_design_${unit_index}`,\r\n domType: domType,\r\n },\r\n innerBlocks,\r\n );\r\n\r\n return ret;\r\n });\r\n\r\n //挿入するブロックと自身のブロックが異なる場合(slide-mvにデータを入れる場合)\r\n if (insertId !== clientId) {\r\n blocksArray.push(pickupBlock);\r\n }\r\n // 既存のインナーブロックを一括置換\r\n replaceInnerBlocks(insertId, blocksArray, false);\r\n }, [selectedFields, pickupType, dispTaxonomies]);\r\n};\r\n"],"names":["createBlockAttr","selectedField","_blockType$attributes","_blockType$attributes2","_blockType$attributes3","_blockType$attributes4","blockAttributes","block","block_class","key","startsWith","concat","className","headingContent","label","content","url","itmar_option","plugin_url","spaceAttributes","margin_val","type","default","top","left","bottom","right","padding_val","imageBlock","createBlock","_objectSpread","blockType","getBlockType","defaultValBase","attributes","default_val","mobileValBase","mobile_val","slideBlock","width_val","serializedSlide","serializeBlockTree","slideBlocks","Array","from","length","createBlockTree","useRebuildChangeField","dispAttributeArray","selectedFields","pickupType","dispTaxonomies","sectionCount","domType","clientId","insertId","replaceInnerBlocks","useDispatch","pickupBlock","useSelect","select","getBlock","useEffect","blocksLength","diff","i","push","splice","blocksArray","map","dispAttribute","unit_index","allBlocks","isArray","innerBlocks","flattenBlocks","existingKeys","_block$attributes","filter","Boolean","cls","_match$","match","newSelectedFields","tax","autoGeneratedBlocks","field","includes","_attr$attributes","attr","blockName","selectedKeys","f","filterBlocksRecursively","blocks","_block$attributes2","name","slice","filteredInner","isAutoGenerated","keep","userBlocks","ret"],"mappings":"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"}
|