@gravity-ui/page-constructor 6.3.2-alpha.5 → 6.3.2-alpha.7
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 +98 -10
- package/build/cjs/blocks/FoldableList/FoldableList.css +13 -0
- package/build/cjs/blocks/FoldableList/FoldableList.d.ts +3 -0
- package/build/cjs/blocks/FoldableList/FoldableList.js +31 -0
- package/build/cjs/blocks/FoldableList/FoldableList.js.map +1 -0
- package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.css +78 -0
- package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.d.ts +2 -0
- package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js +20 -0
- package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js.map +1 -0
- package/build/cjs/blocks/FoldableList/schema.d.ts +140 -0
- package/build/cjs/blocks/FoldableList/schema.js +39 -0
- package/build/cjs/blocks/FoldableList/schema.js.map +1 -0
- package/build/cjs/blocks/Header/Header.css +12 -1
- package/build/cjs/blocks/Header/Header.js +4 -1
- package/build/cjs/blocks/Header/Header.js.map +1 -1
- package/build/cjs/blocks/Header/schema.d.ts +10 -0
- package/build/cjs/blocks/Header/schema.js +5 -0
- package/build/cjs/blocks/Header/schema.js.map +1 -1
- package/build/cjs/blocks/HeaderSlider/schema.d.ts +5 -0
- package/build/cjs/blocks/Slider/Slider.js +4 -1
- package/build/cjs/blocks/Slider/Slider.js.map +1 -1
- package/build/cjs/blocks/index.d.ts +1 -0
- package/build/cjs/blocks/index.js +3 -1
- package/build/cjs/blocks/index.js.map +1 -1
- package/build/cjs/common/store.d.ts +1 -0
- package/build/cjs/common/store.js +1 -0
- package/build/cjs/common/store.js.map +1 -1
- package/build/cjs/common/types/forms.d.ts +12 -1
- package/build/cjs/common/types/forms.js.map +1 -1
- package/build/cjs/components/FullscreenImage/FullscreenImage.css +1 -1
- package/build/cjs/components/ReactPlayer/ReactPlayer.js +4 -1
- package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
- package/build/cjs/constructor-items.d.ts +1 -0
- package/build/cjs/constructor-items.js +4 -4
- package/build/cjs/constructor-items.js.map +1 -1
- package/build/cjs/containers/PageConstructor/PageConstructor.js +18 -1
- package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
- package/build/cjs/editor-v2/components/DynamicForm/DynamicForm.js +8 -1
- package/build/cjs/editor-v2/components/DynamicForm/DynamicForm.js.map +1 -1
- package/build/cjs/editor-v2/components/DynamicForm/FieldBase/FieldBase.css +0 -1
- package/build/cjs/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.css +6 -0
- package/build/cjs/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.d.ts +9 -0
- package/build/cjs/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.js +35 -0
- package/build/cjs/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.js.map +1 -0
- package/build/cjs/editor-v2/components/Tabs/Tabs.css +23 -2
- package/build/cjs/editor-v2/containers/BlockConfigForm/BlockConfigForm.css +0 -1
- package/build/cjs/editor-v2/containers/BlocksList/BlocksList.css +2 -1
- package/build/cjs/editor-v2/containers/GlobalConfig/GlobalConfig.css +0 -1
- package/build/cjs/editor-v2/containers/MiddleScreen/MiddleScreen.css +30 -0
- package/build/cjs/editor-v2/containers/MiddleScreen/MiddleScreen.js +9 -7
- package/build/cjs/editor-v2/containers/MiddleScreen/MiddleScreen.js.map +1 -1
- package/build/cjs/editor-v2/containers/SourceCode/SourceCode.d.ts +2 -1
- package/build/cjs/editor-v2/containers/SourceCode/SourceCode.js +26 -4
- package/build/cjs/editor-v2/containers/SourceCode/SourceCode.js.map +1 -1
- package/build/cjs/editor-v2/containers/ViewSwitches/ViewSwitches.js +4 -4
- package/build/cjs/editor-v2/containers/ViewSwitches/ViewSwitches.js.map +1 -1
- package/build/cjs/editor-v2/hooks/useEditorTabs.js +2 -2
- package/build/cjs/editor-v2/hooks/useEditorTabs.js.map +1 -1
- package/build/cjs/editor-v2/store.d.ts +1 -0
- package/build/cjs/editor-v2/store.js +3 -0
- package/build/cjs/editor-v2/store.js.map +1 -1
- package/build/cjs/hooks/usePCEditorBlockMouseEvents.d.ts +1 -0
- package/build/cjs/hooks/usePCEditorBlockMouseEvents.js +1 -0
- package/build/cjs/hooks/usePCEditorBlockMouseEvents.js.map +1 -1
- package/build/cjs/hooks/usePCEditorItemWrap.d.ts +1 -0
- package/build/cjs/internal-typings/global.d.ts +1 -0
- package/build/cjs/models/constructor-items/blocks.d.ts +19 -1
- package/build/cjs/models/constructor-items/blocks.js +1 -0
- package/build/cjs/models/constructor-items/blocks.js.map +1 -1
- package/build/cjs/models/constructor-items/sub-blocks.d.ts +2 -1
- package/build/cjs/models/constructor-items/sub-blocks.js.map +1 -1
- package/build/cjs/navigation/schema.d.ts +2 -0
- package/build/cjs/navigation/schema.js +12 -3
- package/build/cjs/navigation/schema.js.map +1 -1
- package/build/cjs/schema/constants.js +1 -0
- package/build/cjs/schema/constants.js.map +1 -1
- package/build/cjs/schema/index.d.ts +2 -0
- package/build/cjs/schema/validators/blocks.d.ts +1 -0
- package/build/cjs/schema/validators/blocks.js +1 -0
- package/build/cjs/schema/validators/blocks.js.map +1 -1
- package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.d.ts +1 -1
- package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.js +5 -1
- package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.js.map +1 -1
- package/build/cjs/sub-blocks/HubspotForm/index.js +2 -2
- package/build/cjs/sub-blocks/HubspotForm/index.js.map +1 -1
- package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.d.ts +2 -0
- package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.js +51 -0
- package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.js.map +1 -0
- package/build/cjs/text-transform/config.js +25 -1
- package/build/cjs/text-transform/config.js.map +1 -1
- package/build/cjs/utils/form-generator.js +27 -0
- package/build/cjs/utils/form-generator.js.map +1 -1
- package/build/cjs/utils/hubspot.d.ts +1 -0
- package/build/cjs/utils/hubspot.js.map +1 -1
- package/build/esm/blocks/FoldableList/FoldableList.css +13 -0
- package/build/esm/blocks/FoldableList/FoldableList.d.ts +4 -0
- package/build/esm/blocks/FoldableList/FoldableList.js +29 -0
- package/build/esm/blocks/FoldableList/FoldableList.js.map +1 -0
- package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.css +78 -0
- package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.d.ts +3 -0
- package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js +16 -0
- package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js.map +1 -0
- package/build/esm/blocks/FoldableList/schema.d.ts +140 -0
- package/build/esm/blocks/FoldableList/schema.js +35 -0
- package/build/esm/blocks/FoldableList/schema.js.map +1 -0
- package/build/esm/blocks/Header/Header.css +12 -1
- package/build/esm/blocks/Header/Header.js +4 -1
- package/build/esm/blocks/Header/Header.js.map +1 -1
- package/build/esm/blocks/Header/schema.d.ts +10 -0
- package/build/esm/blocks/Header/schema.js +5 -0
- package/build/esm/blocks/Header/schema.js.map +1 -1
- package/build/esm/blocks/HeaderSlider/schema.d.ts +5 -0
- package/build/esm/blocks/Slider/Slider.js +4 -1
- package/build/esm/blocks/Slider/Slider.js.map +1 -1
- package/build/esm/blocks/index.d.ts +1 -0
- package/build/esm/blocks/index.js +1 -0
- package/build/esm/blocks/index.js.map +1 -1
- package/build/esm/common/store.d.ts +1 -0
- package/build/esm/common/store.js +1 -0
- package/build/esm/common/store.js.map +1 -1
- package/build/esm/common/types/forms.d.ts +12 -1
- package/build/esm/common/types/forms.js.map +1 -1
- package/build/esm/components/FullscreenImage/FullscreenImage.css +1 -1
- package/build/esm/components/ReactPlayer/ReactPlayer.js +4 -1
- package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
- package/build/esm/constructor-items.d.ts +1 -0
- package/build/esm/constructor-items.js +5 -5
- package/build/esm/constructor-items.js.map +1 -1
- package/build/esm/containers/PageConstructor/PageConstructor.js +18 -1
- package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
- package/build/esm/editor-v2/components/DynamicForm/DynamicForm.js +8 -1
- package/build/esm/editor-v2/components/DynamicForm/DynamicForm.js.map +1 -1
- package/build/esm/editor-v2/components/DynamicForm/FieldBase/FieldBase.css +0 -1
- package/build/esm/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.css +6 -0
- package/build/esm/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.d.ts +10 -0
- package/build/esm/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.js +33 -0
- package/build/esm/editor-v2/components/DynamicForm/Fields/AnyOf/AnyOf.js.map +1 -0
- package/build/esm/editor-v2/components/Tabs/Tabs.css +23 -2
- package/build/esm/editor-v2/containers/BlockConfigForm/BlockConfigForm.css +0 -1
- package/build/esm/editor-v2/containers/BlocksList/BlocksList.css +2 -1
- package/build/esm/editor-v2/containers/GlobalConfig/GlobalConfig.css +0 -1
- package/build/esm/editor-v2/containers/MiddleScreen/MiddleScreen.css +30 -0
- package/build/esm/editor-v2/containers/MiddleScreen/MiddleScreen.js +10 -8
- package/build/esm/editor-v2/containers/MiddleScreen/MiddleScreen.js.map +1 -1
- package/build/esm/editor-v2/containers/SourceCode/SourceCode.d.ts +2 -1
- package/build/esm/editor-v2/containers/SourceCode/SourceCode.js +26 -4
- package/build/esm/editor-v2/containers/SourceCode/SourceCode.js.map +1 -1
- package/build/esm/editor-v2/containers/ViewSwitches/ViewSwitches.js +5 -5
- package/build/esm/editor-v2/containers/ViewSwitches/ViewSwitches.js.map +1 -1
- package/build/esm/editor-v2/hooks/useEditorTabs.js +2 -2
- package/build/esm/editor-v2/hooks/useEditorTabs.js.map +1 -1
- package/build/esm/editor-v2/store.d.ts +1 -0
- package/build/esm/editor-v2/store.js +3 -0
- package/build/esm/editor-v2/store.js.map +1 -1
- package/build/esm/hooks/usePCEditorBlockMouseEvents.d.ts +1 -0
- package/build/esm/hooks/usePCEditorBlockMouseEvents.js +1 -0
- package/build/esm/hooks/usePCEditorBlockMouseEvents.js.map +1 -1
- package/build/esm/hooks/usePCEditorItemWrap.d.ts +1 -0
- package/build/esm/internal-typings/global.d.ts +1 -0
- package/build/esm/models/constructor-items/blocks.d.ts +19 -1
- package/build/esm/models/constructor-items/blocks.js +1 -0
- package/build/esm/models/constructor-items/blocks.js.map +1 -1
- package/build/esm/models/constructor-items/sub-blocks.d.ts +2 -1
- package/build/esm/models/constructor-items/sub-blocks.js.map +1 -1
- package/build/esm/navigation/schema.d.ts +2 -0
- package/build/esm/navigation/schema.js +12 -3
- package/build/esm/navigation/schema.js.map +1 -1
- package/build/esm/schema/constants.js +2 -1
- package/build/esm/schema/constants.js.map +1 -1
- package/build/esm/schema/index.d.ts +2 -0
- package/build/esm/schema/validators/blocks.d.ts +1 -0
- package/build/esm/schema/validators/blocks.js +1 -0
- package/build/esm/schema/validators/blocks.js.map +1 -1
- package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.d.ts +1 -1
- package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.js +5 -1
- package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.js.map +1 -1
- package/build/esm/sub-blocks/HubspotForm/index.js +2 -2
- package/build/esm/sub-blocks/HubspotForm/index.js.map +1 -1
- package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.d.ts +2 -0
- package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.js +47 -0
- package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.js.map +1 -0
- package/build/esm/text-transform/config.js +25 -1
- package/build/esm/text-transform/config.js.map +1 -1
- package/build/esm/utils/form-generator.js +27 -0
- package/build/esm/utils/form-generator.js.map +1 -1
- package/build/esm/utils/hubspot.d.ts +1 -0
- package/build/esm/utils/hubspot.js.map +1 -1
- package/package.json +13 -15
- package/schema/index.js +1 -1
- package/server/models/constructor-items/blocks.d.ts +19 -1
- package/server/models/constructor-items/blocks.js +1 -0
- package/server/models/constructor-items/sub-blocks.d.ts +2 -1
- package/server/text-transform/config.js +25 -1
- package/server/utils/hubspot.d.ts +1 -0
- package/widget/{5287.index.js → 1092.index.js} +1 -1
- package/widget/{8092.index.js → 1130.index.js} +1 -1
- package/widget/1219.index.js +1 -0
- package/widget/{2390.index.js → 122.index.js} +1 -1
- package/widget/{6817.index.js → 1289.index.js} +1 -1
- package/widget/{2921.index.js → 1335.index.js} +1 -1
- package/widget/{1876.index.js → 1340.index.js} +1 -1
- package/widget/{3901.index.js → 1349.index.js} +1 -1
- package/widget/1532.index.js +1 -0
- package/widget/{2957.index.js → 1750.index.js} +1 -1
- package/widget/{5105.index.js → 1995.index.js} +1 -1
- package/widget/{5418.index.js → 2010.index.js} +1 -1
- package/widget/{9517.index.js → 2026.index.js} +1 -1
- package/widget/{1794.index.js → 2187.index.js} +1 -1
- package/widget/{7548.index.js → 2218.index.js} +1 -1
- package/widget/225.index.js +1 -0
- package/widget/2338.index.js +1 -0
- package/widget/{4653.index.js → 2355.index.js} +1 -1
- package/widget/{5001.index.js → 2369.index.js} +1 -1
- package/widget/{4127.index.js → 2487.index.js} +1 -1
- package/widget/{6165.index.js → 2498.index.js} +1 -1
- package/widget/{5254.index.js → 2509.index.js} +1 -1
- package/widget/2544.index.js +1 -1
- package/widget/2619.index.js +1 -0
- package/widget/{5941.index.js → 2673.index.js} +1 -1
- package/widget/{4717.index.js → 2698.index.js} +1 -1
- package/widget/{7427.index.js → 2706.index.js} +1 -1
- package/widget/{8602.index.js → 2739.index.js} +1 -1
- package/widget/2745.index.js +1 -0
- package/widget/2796.index.js +1 -0
- package/widget/{7573.index.js → 2830.index.js} +1 -1
- package/widget/{3237.index.js → 2878.index.js} +1 -1
- package/widget/292.index.js +1 -0
- package/widget/2979.index.js +1 -0
- package/widget/3187.index.js +1 -0
- package/widget/321.index.js +1 -0
- package/widget/{5437.index.js → 3222.index.js} +1 -1
- package/widget/{1987.index.js → 3225.index.js} +1 -1
- package/widget/{7719.index.js → 3309.index.js} +1 -1
- package/widget/{4254.index.js → 3433.index.js} +1 -1
- package/widget/{2722.index.js → 3473.index.js} +1 -1
- package/widget/3532.index.js +1 -0
- package/widget/3562.index.js +1 -0
- package/widget/{6148.index.js → 3672.index.js} +1 -1
- package/widget/{4990.index.js → 3713.index.js} +1 -1
- package/widget/{8894.index.js → 3860.index.js} +1 -1
- package/widget/{5551.index.js → 3900.index.js} +1 -1
- package/widget/{6629.index.js → 4007.index.js} +1 -1
- package/widget/{7467.index.js → 4061.index.js} +1 -1
- package/widget/{5423.index.js → 4072.index.js} +1 -1
- package/widget/{4144.index.js → 4173.index.js} +1 -1
- package/widget/4288.index.js +1 -0
- package/widget/{8242.index.js → 4309.index.js} +1 -1
- package/widget/{8146.index.js → 4334.index.js} +1 -1
- package/widget/{9339.index.js → 4405.index.js} +1 -1
- package/widget/4457.index.js +1 -0
- package/widget/{8768.index.js → 4485.index.js} +1 -1
- package/widget/4509.index.js +1 -0
- package/widget/{4067.index.js → 4608.index.js} +1 -1
- package/widget/465.index.js +1 -0
- package/widget/{7118.index.js → 4719.index.js} +1 -1
- package/widget/4734.index.js +1 -0
- package/widget/4780.index.js +1 -0
- package/widget/4895.index.js +1 -0
- package/widget/{790.index.js → 494.index.js} +1 -1
- package/widget/5012.index.js +1 -0
- package/widget/{4722.index.js → 5084.index.js} +1 -1
- package/widget/5285.index.js +1 -0
- package/widget/5376.index.js +1 -0
- package/widget/539.index.js +1 -0
- package/widget/5414.index.js +1 -0
- package/widget/{8980.index.js → 5513.index.js} +1 -1
- package/widget/5530.index.js +1 -0
- package/widget/5571.index.js +1 -0
- package/widget/{8540.index.js → 5592.index.js} +1 -1
- package/widget/5616.index.js +1 -0
- package/widget/{5903.index.js → 5662.index.js} +1 -1
- package/widget/{7109.index.js → 5665.index.js} +1 -1
- package/widget/{8792.index.js → 5681.index.js} +1 -1
- package/widget/5760.index.js +1 -0
- package/widget/{6257.index.js → 5811.index.js} +1 -1
- package/widget/{5054.index.js → 5826.index.js} +1 -1
- package/widget/{1560.index.js → 5877.index.js} +1 -1
- package/widget/{9149.index.js → 5944.index.js} +1 -1
- package/widget/{8341.index.js → 5977.index.js} +1 -1
- package/widget/{3646.index.js → 5993.index.js} +1 -1
- package/widget/{2009.index.js → 6007.index.js} +1 -1
- package/widget/{3852.index.js → 6033.index.js} +1 -1
- package/widget/{5567.index.js → 6101.index.js} +1 -1
- package/widget/623.index.js +1 -0
- package/widget/{7989.index.js → 6290.index.js} +1 -1
- package/widget/6364.index.js +1 -0
- package/widget/{7387.index.js → 6400.index.js} +1 -1
- package/widget/{5473.index.js → 6462.index.js} +1 -1
- package/widget/6467.index.js +1 -0
- package/widget/{6622.index.js → 6481.index.js} +1 -1
- package/widget/{4888.index.js → 6605.index.js} +1 -1
- package/widget/{2966.index.js → 6803.index.js} +1 -1
- package/widget/{5627.index.js → 6847.index.js} +1 -1
- package/widget/{2019.index.js → 7081.index.js} +1 -1
- package/widget/7205.index.js +1 -0
- package/widget/{5596.index.js → 7250.index.js} +1 -1
- package/widget/{7763.index.js → 7317.index.js} +1 -1
- package/widget/7329.index.js +1 -0
- package/widget/{5159.index.js → 7406.index.js} +1 -1
- package/widget/{7632.index.js → 7409.index.js} +1 -1
- package/widget/{3783.index.js → 7420.index.js} +1 -1
- package/widget/{7101.index.js → 7439.index.js} +1 -1
- package/widget/{9197.index.js → 7674.index.js} +1 -1
- package/widget/{5805.index.js → 7690.index.js} +1 -1
- package/widget/{2641.index.js → 7741.index.js} +1 -1
- package/widget/{4724.index.js → 7933.index.js} +1 -1
- package/widget/{9132.index.js → 8003.index.js} +1 -1
- package/widget/813.index.js +1 -0
- package/widget/{6513.index.js → 8142.index.js} +1 -1
- package/widget/{8562.index.js → 8298.index.js} +1 -1
- package/widget/{7200.index.js → 8361.index.js} +1 -1
- package/widget/{4855.index.js → 8418.index.js} +1 -1
- package/widget/860.index.js +1 -0
- package/widget/{1796.index.js → 8615.index.js} +1 -1
- package/widget/{6312.index.js → 8660.index.js} +1 -1
- package/widget/880.index.js +1 -0
- package/widget/8804.index.js +1 -0
- package/widget/8809.index.js +1 -0
- package/widget/{9157.index.js → 8928.index.js} +1 -1
- package/widget/912.index.js +1 -0
- package/widget/9160.index.js +1 -0
- package/widget/{5914.index.js → 9252.index.js} +1 -1
- package/widget/{3706.index.js → 9286.index.js} +1 -1
- package/widget/{2502.index.js → 9294.index.js} +1 -1
- package/widget/{9182.index.js → 9423.index.js} +1 -1
- package/widget/{8477.index.js → 9464.index.js} +1 -1
- package/widget/950.index.js +1 -0
- package/widget/952.index.js +1 -0
- package/widget/9677.index.js +1 -0
- package/widget/9751.index.js +1 -0
- package/widget/{3220.index.js → 9836.index.js} +1 -1
- package/widget/{2376.index.js → 9865.index.js} +1 -1
- package/widget/{5109.index.js → 9881.index.js} +1 -1
- package/widget/9911.index.js +1 -1
- package/widget/{7822.index.js → 9964.index.js} +1 -1
- package/widget/{9091.index.js → 9990.index.js} +1 -1
- package/widget/9998.index.js +1 -0
- package/widget/index.js +1 -1
- package/widget/1113.index.js +0 -1
- package/widget/123.index.js +0 -1
- package/widget/1573.index.js +0 -1
- package/widget/2030.index.js +0 -1
- package/widget/229.index.js +0 -1
- package/widget/261.index.js +0 -1
- package/widget/302.index.js +0 -1
- package/widget/3035.index.js +0 -1
- package/widget/313.index.js +0 -1
- package/widget/3521.index.js +0 -1
- package/widget/3864.index.js +0 -1
- package/widget/3939.index.js +0 -1
- package/widget/4017.index.js +0 -1
- package/widget/4149.index.js +0 -1
- package/widget/4502.index.js +0 -1
- package/widget/466.index.js +0 -1
- package/widget/504.index.js +0 -1
- package/widget/5321.index.js +0 -1
- package/widget/5742.index.js +0 -1
- package/widget/5817.index.js +0 -1
- package/widget/600.index.js +0 -1
- package/widget/6023.index.js +0 -1
- package/widget/6159.index.js +0 -1
- package/widget/617.index.js +0 -1
- package/widget/6183.index.js +0 -1
- package/widget/6509.index.js +0 -1
- package/widget/6636.index.js +0 -1
- package/widget/6831.index.js +0 -1
- package/widget/6953.index.js +0 -1
- package/widget/7296.index.js +0 -1
- package/widget/7486.index.js +0 -1
- package/widget/7496.index.js +0 -1
- package/widget/7553.index.js +0 -1
- package/widget/758.index.js +0 -1
- package/widget/772.index.js +0 -1
- package/widget/7797.index.js +0 -1
- package/widget/8066.index.js +0 -1
- package/widget/8507.index.js +0 -1
- package/widget/8529.index.js +0 -1
- package/widget/8727.index.js +0 -1
- package/widget/8864.index.js +0 -1
- package/widget/8889.index.js +0 -1
- package/widget/953.index.js +0 -1
- package/widget/9670.index.js +0 -1
- package/widget/9682.index.js +0 -1
- package/widget/9928.index.js +0 -1
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
.pc-FoldableListBlockItem__title {
|
|
2
|
+
margin: 0;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
/* use this for style redefinitions to awoid problems with
|
|
6
|
+
unpredictable css rules order in build */
|
|
7
|
+
.pc-FoldableListBlockItem {
|
|
8
|
+
padding-bottom: 32px;
|
|
9
|
+
border-bottom: 1px solid var(--g-color-line-generic);
|
|
10
|
+
}
|
|
11
|
+
.pc-FoldableListBlockItem + .pc-FoldableListBlockItem {
|
|
12
|
+
padding-top: 32px;
|
|
13
|
+
}
|
|
14
|
+
.pc-FoldableListBlockItem__title {
|
|
15
|
+
display: inline-block;
|
|
16
|
+
margin: 0;
|
|
17
|
+
padding: 0;
|
|
18
|
+
font: inherit;
|
|
19
|
+
border: none;
|
|
20
|
+
outline: none;
|
|
21
|
+
color: inherit;
|
|
22
|
+
background: none;
|
|
23
|
+
cursor: pointer;
|
|
24
|
+
font-size: var(--g-text-header-1-font-size);
|
|
25
|
+
line-height: var(--g-text-header-1-line-height);
|
|
26
|
+
color: var(--pc-text-header-color);
|
|
27
|
+
font-weight: var(--g-text-accent-font-weight);
|
|
28
|
+
position: relative;
|
|
29
|
+
display: block;
|
|
30
|
+
width: 100%;
|
|
31
|
+
padding-right: 24px;
|
|
32
|
+
text-align: start;
|
|
33
|
+
cursor: pointer;
|
|
34
|
+
border-radius: var(--g-focus-border-radius);
|
|
35
|
+
}
|
|
36
|
+
.pc-FoldableListBlockItem__title:focus {
|
|
37
|
+
outline: 2px solid var(--g-color-line-focus);
|
|
38
|
+
outline-offset: 0;
|
|
39
|
+
}
|
|
40
|
+
.pc-FoldableListBlockItem__title:focus:not(:focus-visible) {
|
|
41
|
+
outline: 0;
|
|
42
|
+
}
|
|
43
|
+
.pc-FoldableListBlockItem__title a {
|
|
44
|
+
outline: none;
|
|
45
|
+
color: var(--g-color-text-link);
|
|
46
|
+
text-decoration: none;
|
|
47
|
+
cursor: pointer;
|
|
48
|
+
}
|
|
49
|
+
.utilityfocus .pc-FoldableListBlockItem__title a:focus {
|
|
50
|
+
outline: 2px solid #ffdb4d;
|
|
51
|
+
}
|
|
52
|
+
.pc-FoldableListBlockItem__title a:hover, .pc-FoldableListBlockItem__title a:active {
|
|
53
|
+
--pc-text-header-color: var(--g-color-text-link-hover);
|
|
54
|
+
color: var(--g-color-text-link-hover);
|
|
55
|
+
}
|
|
56
|
+
.pc-FoldableListBlockItem__arrow {
|
|
57
|
+
position: absolute;
|
|
58
|
+
right: 0;
|
|
59
|
+
top: 0;
|
|
60
|
+
bottom: 0;
|
|
61
|
+
margin: auto;
|
|
62
|
+
color: var(--g-color-text-primary);
|
|
63
|
+
}
|
|
64
|
+
.pc-FoldableListBlockItem__link {
|
|
65
|
+
font-size: var(--g-text-body-2-font-size);
|
|
66
|
+
line-height: var(--g-text-body-2-line-height);
|
|
67
|
+
}
|
|
68
|
+
.pc-FoldableListBlockItem__link.pc-FoldableListBlockItem__link a {
|
|
69
|
+
outline-offset: -2px;
|
|
70
|
+
border-radius: calc(var(--g-focus-border-radius) + 2px);
|
|
71
|
+
display: inline-block;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.pc-FoldableListBlockItem__text {
|
|
75
|
+
font-size: var(--g-text-body-2-font-size);
|
|
76
|
+
line-height: var(--g-text-body-2-line-height);
|
|
77
|
+
margin-top: 12px;
|
|
78
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { FoldableListBlockItemProps } from "../../../models/index.js";
|
|
2
|
+
import './FoldableListBlockItem.css';
|
|
3
|
+
export declare const FoldableListBlockItem: ({ title: itemTitle, text: itemText, link, listStyle, isOpened, onClick, }: FoldableListBlockItemProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useActionHandlers } from '@gravity-ui/uikit';
|
|
3
|
+
import { Foldable, HTML, ToggleArrow, YFMWrapper } from "../../../components/index.js";
|
|
4
|
+
import Link from "../../../components/Link/Link.js";
|
|
5
|
+
import { block } from "../../../utils/index.js";
|
|
6
|
+
import './FoldableListBlockItem.css';
|
|
7
|
+
const b = block('FoldableListBlockItem');
|
|
8
|
+
export const FoldableListBlockItem = ({ title: itemTitle, text: itemText, link, listStyle = 'dash', isOpened, onClick, }) => {
|
|
9
|
+
const { onKeyDown } = useActionHandlers(onClick);
|
|
10
|
+
return (_jsxs("div", { className: b(), itemScope: true, role: 'listitem', children: [_jsxs("button", { className: b('title'), onClick: onClick, "aria-expanded": isOpened, onKeyDown: onKeyDown, children: [_jsx(HTML, { children: itemTitle }), _jsx(ToggleArrow, { open: isOpened, size: 16, type: 'vertical', iconType: "navigation", className: b('arrow') })] }), _jsx(Foldable, { isOpened: isOpened, children: _jsxs("div", { className: b('text'), "aria-hidden": !isOpened, children: [_jsx(YFMWrapper, { content: itemText, modifiers: {
|
|
11
|
+
constructor: true,
|
|
12
|
+
constructorListStyle: true,
|
|
13
|
+
constructorListStyleDash: listStyle === 'dash',
|
|
14
|
+
} }), link && _jsx(Link, { ...link, tabIndex: isOpened ? 0 : -1, className: b('link') })] }) })] }));
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=FoldableListBlockItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FoldableListBlockItem.js","sourceRoot":"../../../../../src","sources":["blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAC,qCAA4B;AAC5E,OAAO,IAAI,yCAAsC;AAEjD,OAAO,EAAC,KAAK,EAAC,gCAAuB;AAErC,OAAO,6BAA6B,CAAC;AAErC,MAAM,CAAC,GAAG,KAAK,CAAC,uBAAuB,CAAC,CAAC;AAEzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,EAClC,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,QAAQ,EACd,IAAI,EACJ,SAAS,GAAG,MAAM,EAClB,QAAQ,EACR,OAAO,GACkB,EAAE,EAAE;IAC7B,MAAM,EAAC,SAAS,EAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAE/C,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,EAAE,EAAE,SAAS,QAAC,IAAI,EAAE,UAAU,aAC3C,kBACI,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,EACrB,OAAO,EAAE,OAAO,mBACD,QAAQ,EACvB,SAAS,EAAE,SAAS,aAEpB,KAAC,IAAI,cAAE,SAAS,GAAQ,EACxB,KAAC,WAAW,IACR,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,EAAE,EACR,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAC,YAAY,EACrB,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,GACvB,IACG,EACT,KAAC,QAAQ,IAAC,QAAQ,EAAE,QAAQ,YACxB,eAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,iBAAe,CAAC,QAAQ,aAC7C,KAAC,UAAU,IACP,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAE;gCACP,WAAW,EAAE,IAAI;gCACjB,oBAAoB,EAAE,IAAI;gCAC1B,wBAAwB,EAAE,SAAS,KAAK,MAAM;6BACjD,GACH,EACD,IAAI,IAAI,KAAC,IAAI,OAAK,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,GAAI,IAC5E,GACC,IACT,CACT,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {useActionHandlers} from '@gravity-ui/uikit';\n\nimport {Foldable, HTML, ToggleArrow, YFMWrapper} from '../../../components';\nimport Link from '../../../components/Link/Link';\nimport {FoldableListBlockItemProps} from '../../../models';\nimport {block} from '../../../utils';\n\nimport './FoldableListBlockItem.scss';\n\nconst b = block('FoldableListBlockItem');\n\nexport const FoldableListBlockItem = ({\n title: itemTitle,\n text: itemText,\n link,\n listStyle = 'dash',\n isOpened,\n onClick,\n}: FoldableListBlockItemProps) => {\n const {onKeyDown} = useActionHandlers(onClick);\n\n return (\n <div className={b()} itemScope role={'listitem'}>\n <button\n className={b('title')}\n onClick={onClick}\n aria-expanded={isOpened}\n onKeyDown={onKeyDown}\n >\n <HTML>{itemTitle}</HTML>\n <ToggleArrow\n open={isOpened}\n size={16}\n type={'vertical'}\n iconType=\"navigation\"\n className={b('arrow')}\n />\n </button>\n <Foldable isOpened={isOpened}>\n <div className={b('text')} aria-hidden={!isOpened}>\n <YFMWrapper\n content={itemText}\n modifiers={{\n constructor: true,\n constructorListStyle: true,\n constructorListStyleDash: listStyle === 'dash',\n }}\n />\n {link && <Link {...link} tabIndex={isOpened ? 0 : -1} className={b('link')} />}\n </div>\n </Foldable>\n </div>\n );\n};\n"]}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
export declare const FoldableListBlock: {
|
|
2
|
+
'foldable-list-block': {
|
|
3
|
+
additionalProperties: boolean;
|
|
4
|
+
required: string[];
|
|
5
|
+
properties: {
|
|
6
|
+
items: {
|
|
7
|
+
type: string;
|
|
8
|
+
items: {
|
|
9
|
+
type: string;
|
|
10
|
+
properties: {
|
|
11
|
+
when: {
|
|
12
|
+
type: string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
title: {
|
|
18
|
+
oneOf: ({
|
|
19
|
+
type: string;
|
|
20
|
+
contentType: string;
|
|
21
|
+
optionName: string;
|
|
22
|
+
} | {
|
|
23
|
+
optionName: string;
|
|
24
|
+
type: string;
|
|
25
|
+
additionalProperties: boolean;
|
|
26
|
+
required: string[];
|
|
27
|
+
properties: {
|
|
28
|
+
text: {
|
|
29
|
+
type: string;
|
|
30
|
+
contentType: string;
|
|
31
|
+
};
|
|
32
|
+
textSize: {
|
|
33
|
+
type: string;
|
|
34
|
+
enum: string[];
|
|
35
|
+
};
|
|
36
|
+
url: {
|
|
37
|
+
type: string;
|
|
38
|
+
};
|
|
39
|
+
urlTitle: {
|
|
40
|
+
type: string;
|
|
41
|
+
};
|
|
42
|
+
resetMargin: {
|
|
43
|
+
type: string;
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
contentType?: undefined;
|
|
47
|
+
})[];
|
|
48
|
+
};
|
|
49
|
+
text: {
|
|
50
|
+
type: string;
|
|
51
|
+
contentType: string;
|
|
52
|
+
inputType: string;
|
|
53
|
+
};
|
|
54
|
+
additionalInfo: {
|
|
55
|
+
type: string;
|
|
56
|
+
contentType: string;
|
|
57
|
+
};
|
|
58
|
+
links: {
|
|
59
|
+
type: string;
|
|
60
|
+
items: {
|
|
61
|
+
type: string;
|
|
62
|
+
properties: {
|
|
63
|
+
when: {
|
|
64
|
+
type: string;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
buttons: {
|
|
70
|
+
type: string;
|
|
71
|
+
items: {
|
|
72
|
+
type: string;
|
|
73
|
+
properties: {
|
|
74
|
+
when: {
|
|
75
|
+
type: string;
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
list: {
|
|
81
|
+
type: string;
|
|
82
|
+
items: {
|
|
83
|
+
type: string;
|
|
84
|
+
properties: {
|
|
85
|
+
when: {
|
|
86
|
+
type: string;
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
controlPosition: {
|
|
92
|
+
type: string;
|
|
93
|
+
enum: string[];
|
|
94
|
+
};
|
|
95
|
+
anchor: {
|
|
96
|
+
type: string;
|
|
97
|
+
additionalProperties: boolean;
|
|
98
|
+
required: string[];
|
|
99
|
+
properties: {
|
|
100
|
+
text: {
|
|
101
|
+
type: string;
|
|
102
|
+
contentType: string;
|
|
103
|
+
};
|
|
104
|
+
url: {
|
|
105
|
+
type: string;
|
|
106
|
+
};
|
|
107
|
+
urlTitle: {
|
|
108
|
+
type: string;
|
|
109
|
+
};
|
|
110
|
+
};
|
|
111
|
+
};
|
|
112
|
+
visible: {
|
|
113
|
+
type: string;
|
|
114
|
+
enum: string[];
|
|
115
|
+
};
|
|
116
|
+
resetPaddings: {
|
|
117
|
+
type: string;
|
|
118
|
+
};
|
|
119
|
+
context: {
|
|
120
|
+
type: string;
|
|
121
|
+
};
|
|
122
|
+
indent: {
|
|
123
|
+
type: string;
|
|
124
|
+
additionalProperties: boolean;
|
|
125
|
+
properties: {
|
|
126
|
+
top: {
|
|
127
|
+
enum: string[];
|
|
128
|
+
};
|
|
129
|
+
bottom: {
|
|
130
|
+
enum: string[];
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
type: {};
|
|
135
|
+
when: {
|
|
136
|
+
type: string;
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
};
|
|
140
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import omit from "lodash/omit.js";
|
|
2
|
+
import { BlockBaseProps, LinkProps } from "../../schema/validators/common.js";
|
|
3
|
+
import { filteredArray } from "../../schema/validators/utils.js";
|
|
4
|
+
import { ContentBase } from "../../sub-blocks/Content/schema.js";
|
|
5
|
+
const FoldableListBlockContentProps = omit(ContentBase, ['size', 'theme']);
|
|
6
|
+
export const FoldableListBlock = {
|
|
7
|
+
'foldable-list-block': {
|
|
8
|
+
additionalProperties: false,
|
|
9
|
+
required: ['title', 'items'],
|
|
10
|
+
properties: {
|
|
11
|
+
...BlockBaseProps,
|
|
12
|
+
...FoldableListBlockContentProps,
|
|
13
|
+
items: filteredArray({
|
|
14
|
+
type: 'object',
|
|
15
|
+
required: ['title', 'text'],
|
|
16
|
+
properties: {
|
|
17
|
+
title: {
|
|
18
|
+
type: 'string',
|
|
19
|
+
contentType: 'text',
|
|
20
|
+
},
|
|
21
|
+
text: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
contentType: 'yfm',
|
|
24
|
+
},
|
|
25
|
+
link: LinkProps,
|
|
26
|
+
listStyle: {
|
|
27
|
+
type: 'string',
|
|
28
|
+
enum: ['dash', 'disk'],
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
}),
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["blocks/FoldableList/schema.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,uBAAoB;AAE/B,OAAO,EAAC,cAAc,EAAE,SAAS,EAAC,0CAAuC;AACzE,OAAO,EAAC,aAAa,EAAC,yCAAsC;AAC5D,OAAO,EAAC,WAAW,EAAC,2CAAwC;AAE5D,MAAM,6BAA6B,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC7B,qBAAqB,EAAE;QACnB,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAC5B,UAAU,EAAE;YACR,GAAG,cAAc;YACjB,GAAG,6BAA6B;YAChC,KAAK,EAAE,aAAa,CAAC;gBACjB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;gBAC3B,UAAU,EAAE;oBACR,KAAK,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,MAAM;qBACtB;oBACD,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,KAAK;qBACrB;oBACD,IAAI,EAAE,SAAS;oBACf,SAAS,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;qBACzB;iBACJ;aACJ,CAAC;SACL;KACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport {BlockBaseProps, LinkProps} from '../../schema/validators/common';\nimport {filteredArray} from '../../schema/validators/utils';\nimport {ContentBase} from '../../sub-blocks/Content/schema';\n\nconst FoldableListBlockContentProps = omit(ContentBase, ['size', 'theme']);\n\nexport const FoldableListBlock = {\n 'foldable-list-block': {\n additionalProperties: false,\n required: ['title', 'items'],\n properties: {\n ...BlockBaseProps,\n ...FoldableListBlockContentProps,\n items: filteredArray({\n type: 'object',\n required: ['title', 'text'],\n properties: {\n title: {\n type: 'string',\n contentType: 'text',\n },\n text: {\n type: 'string',\n contentType: 'yfm',\n },\n link: LinkProps,\n listStyle: {\n type: 'string',\n enum: ['dash', 'disk'],\n },\n },\n }),\n },\n },\n};\n"]}
|
|
@@ -30,6 +30,9 @@ unpredictable css rules order in build */
|
|
|
30
30
|
.pc-header-block__content_theme_dark .pc-header-block__description .yfm {
|
|
31
31
|
color: var(--g-color-text-light-primary);
|
|
32
32
|
}
|
|
33
|
+
.pc-header-block__content_theme_dark .pc-header-block__additional-info .yfm p {
|
|
34
|
+
color: var(--g-color-text-light-secondary) !important; /* stylelint-disable-line declaration-no-important */
|
|
35
|
+
}
|
|
33
36
|
.pc-header-block__content_vertical-offset {
|
|
34
37
|
margin: 16px 0;
|
|
35
38
|
}
|
|
@@ -90,6 +93,14 @@ unpredictable css rules order in build */
|
|
|
90
93
|
line-height: var(--g-text-body-3-line-height);
|
|
91
94
|
color: var(--g-color-text-primary);
|
|
92
95
|
}
|
|
96
|
+
.pc-header-block__additional-info {
|
|
97
|
+
margin-top: 16px;
|
|
98
|
+
}
|
|
99
|
+
.pc-header-block__additional-info .yfm p {
|
|
100
|
+
font-size: var(--g-text-body-2-font-size);
|
|
101
|
+
line-height: var(--g-text-body-2-line-height);
|
|
102
|
+
color: var(--g-color-text-secondary) !important; /* stylelint-disable-line declaration-no-important */
|
|
103
|
+
}
|
|
93
104
|
.pc-header-block__buttons {
|
|
94
105
|
margin-top: 16px;
|
|
95
106
|
}
|
|
@@ -97,7 +108,7 @@ unpredictable css rules order in build */
|
|
|
97
108
|
margin-top: 16px;
|
|
98
109
|
}
|
|
99
110
|
.pc-header-block__button.pc-header-block__button:not(:last-child) {
|
|
100
|
-
margin-right:
|
|
111
|
+
margin-right: 12px;
|
|
101
112
|
}
|
|
102
113
|
|
|
103
114
|
.pc-header-block__media {
|
|
@@ -22,7 +22,7 @@ const Background = ({ background, isMobile }) => {
|
|
|
22
22
|
};
|
|
23
23
|
const FullWidthBackground = ({ background }) => (_jsx("div", { className: b('background', { ['full-width']: true }), style: { backgroundColor: background?.color } }));
|
|
24
24
|
export const HeaderBlock = (props) => {
|
|
25
|
-
const { title, overtitle, description, buttons, image, video, width = 'm', imageSize, offset = 'default', background, theme: textTheme = 'light', verticalOffset = 'm', className, breadcrumbs, status, renderTitle, children, mediaView = 'full', centered, } = props;
|
|
25
|
+
const { title, overtitle, description, buttons, image, video, width = 'm', imageSize, offset = 'default', background, theme: textTheme = 'light', verticalOffset = 'm', className, breadcrumbs, status, renderTitle, children, mediaView = 'full', centered, additionalInfo, } = props;
|
|
26
26
|
const isMobile = React.useContext(MobileContext);
|
|
27
27
|
const theme = useTheme();
|
|
28
28
|
const hasRightSideImage = Boolean((image || video) && !centered);
|
|
@@ -53,6 +53,9 @@ export const HeaderBlock = (props) => {
|
|
|
53
53
|
}), children: _jsxs(Col, { sizes: titleSizes, className: b('content-inner', { centered }), children: [overtitle && (_jsx("div", { className: b('overtitle'), children: typeof overtitle === 'string' ? (_jsx(HTML, { children: overtitle })) : (overtitle) })), _jsxs("h1", { className: b('title'), id: titleId, children: [status, renderTitle ? renderTitle(title) : _jsx(HTML, { children: title })] }), description && (_jsx("div", { className: b('description', { theme: textTheme }), children: _jsx(YFMWrapper, { content: description, modifiers: {
|
|
54
54
|
constructor: true,
|
|
55
55
|
constructorTheme: textTheme,
|
|
56
|
+
} }) })), additionalInfo && (_jsx("div", { className: b('additional-info', { theme: textTheme }), children: _jsx(YFMWrapper, { content: additionalInfo, modifiers: {
|
|
57
|
+
constructor: true,
|
|
58
|
+
constructorTheme: textTheme,
|
|
56
59
|
} }) })), buttons && (_jsx("div", { className: b('buttons'), "data-qa": "header-buttons", children: buttons.map((button, index) => (_jsx(RouterLink, { href: button.url, children: _jsx(Button, { className: b('button'), size: "xl", extraProps: {
|
|
57
60
|
'aria-describedby': titleId,
|
|
58
61
|
...button.extraProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sourceRoot":"../../../../src","sources":["blocks/Header/Header.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable complexity */\nimport {useUniqId} from '@gravity-ui/uikit';\nimport * as React from 'react';\n\nimport {Button, HTML, Media, RouterLink} from '../../components';\nimport HeaderBreadcrumbs from '../../components/HeaderBreadcrumbs/HeaderBreadcrumbs';\nimport {getMediaImage} from '../../components/Media/Image/utils';\nimport YFMWrapper from '../../components/YFMWrapper/YFMWrapper';\nimport {MobileContext} from '../../context/mobileContext';\nimport {useTheme} from '../../context/theme';\nimport {Col, Grid, Row} from '../../grid';\nimport {ClassNameProps, HeaderBlockBackground, HeaderBlockProps} from '../../models';\nimport {block, getThemedValue} from '../../utils';\nimport {mergeVideoMicrodata} from '../../utils/microdata';\n\nimport {getImageSize, getTitleSizes, titleWithImageSizes} from './utils';\nimport './Header.scss';\n\nconst b = block('header-block');\n\ntype HeaderBlockFullProps = HeaderBlockProps & ClassNameProps;\n\ninterface BackgroundProps {\n background: HeaderBlockBackground;\n isMobile: boolean;\n}\n\nconst Background = ({background, isMobile}: BackgroundProps) => {\n const {url, image, fullWidthMedia, video, color} = background;\n const imageObject = url ? getMediaImage(url) : image;\n const renderMedia = !isMobile || (typeof image === 'object' && 'mobile' in image);\n\n return (\n <div\n className={b('background', {media: true, 'full-width-media': fullWidthMedia})}\n style={{backgroundColor: color}}\n >\n {renderMedia && (\n <Media\n {...background}\n className={b('background-media')}\n imageClassName={b('image')}\n videoClassName={b('video')}\n isBackground={true}\n parallax={false}\n video={isMobile ? undefined : video}\n image={imageObject}\n />\n )}\n </div>\n );\n};\n\ninterface FullWidthBackgroundProps {\n background: HeaderBlockBackground;\n}\n\nconst FullWidthBackground = ({background}: FullWidthBackgroundProps) => (\n <div\n className={b('background', {['full-width']: true})}\n style={{backgroundColor: background?.color}}\n />\n);\n\nexport const HeaderBlock = (props: React.PropsWithChildren<HeaderBlockFullProps>) => {\n const {\n title,\n overtitle,\n description,\n buttons,\n image,\n video,\n width = 'm',\n imageSize,\n offset = 'default',\n background,\n theme: textTheme = 'light',\n verticalOffset = 'm',\n className,\n breadcrumbs,\n status,\n renderTitle,\n children,\n mediaView = 'full',\n centered,\n } = props;\n const isMobile = React.useContext(MobileContext);\n const theme = useTheme();\n const hasRightSideImage = Boolean((image || video) && !centered);\n const curImageSize = imageSize || getImageSize(width);\n const titleSizes = hasRightSideImage ? titleWithImageSizes(curImageSize) : getTitleSizes(width);\n let curVerticalOffset = verticalOffset;\n\n if (hasRightSideImage && !verticalOffset) {\n curVerticalOffset = 'm';\n }\n\n const backgroundThemed = background && getThemedValue(background, theme);\n const imageThemed = image && getThemedValue(image, theme);\n const videoThemed = video && getThemedValue(video, theme);\n const mediaWithMicrodata = mergeVideoMicrodata(\n {video: videoThemed, image: imageThemed},\n {\n name: title,\n description,\n },\n );\n const fullWidth = backgroundThemed?.fullWidth || backgroundThemed?.fullWidthMedia;\n const titleId = useUniqId();\n\n return (\n <header\n className={b(\n {\n ['has-media']: hasRightSideImage,\n ['full-width']: fullWidth,\n ['media-view']: mediaView,\n ['controls-view']: textTheme,\n },\n className,\n )}\n >\n {backgroundThemed && fullWidth && <FullWidthBackground background={backgroundThemed} />}\n {backgroundThemed && <Background background={backgroundThemed} isMobile={isMobile} />}\n <Grid containerClass={b('container-fluid')}>\n {breadcrumbs && (\n <Row className={b('breadcrumbs')}>\n <Col>\n <HeaderBreadcrumbs {...breadcrumbs} theme={textTheme} />\n </Col>\n </Row>\n )}\n <Row>\n <Col reset className={b('content-wrapper')}>\n <Row>\n <Col\n className={b('content', {\n offset,\n theme: textTheme,\n 'vertical-offset': curVerticalOffset,\n })}\n >\n <Col sizes={titleSizes} className={b('content-inner', {centered})}>\n {overtitle && (\n <div className={b('overtitle')}>\n {typeof overtitle === 'string' ? (\n <HTML>{overtitle}</HTML>\n ) : (\n overtitle\n )}\n </div>\n )}\n <h1 className={b('title')} id={titleId}>\n {status}\n {renderTitle ? renderTitle(title) : <HTML>{title}</HTML>}\n </h1>\n {description && (\n <div className={b('description', {theme: textTheme})}>\n <YFMWrapper\n content={description}\n modifiers={{\n constructor: true,\n constructorTheme: textTheme,\n }}\n />\n </div>\n )}\n {buttons && (\n <div className={b('buttons')} data-qa=\"header-buttons\">\n {buttons.map((button, index) => (\n <RouterLink href={button.url} key={index}>\n <Button\n key={index}\n className={b('button')}\n size=\"xl\"\n extraProps={{\n 'aria-describedby': titleId,\n ...button.extraProps,\n }}\n {...button}\n />\n </RouterLink>\n ))}\n </div>\n )}\n {children}\n </Col>\n </Col>\n </Row>\n {hasRightSideImage && (\n <Media\n className={b('media', {[curImageSize]: true})}\n videoClassName={b('video')}\n imageClassName={b('image')}\n {...mediaWithMicrodata}\n />\n )}\n </Col>\n </Row>\n </Grid>\n </header>\n );\n};\n\nexport default HeaderBlock;\n"]}
|
|
1
|
+
{"version":3,"file":"Header.js","sourceRoot":"../../../../src","sources":["blocks/Header/Header.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable complexity */\nimport {useUniqId} from '@gravity-ui/uikit';\nimport * as React from 'react';\n\nimport {Button, HTML, Media, RouterLink} from '../../components';\nimport HeaderBreadcrumbs from '../../components/HeaderBreadcrumbs/HeaderBreadcrumbs';\nimport {getMediaImage} from '../../components/Media/Image/utils';\nimport YFMWrapper from '../../components/YFMWrapper/YFMWrapper';\nimport {MobileContext} from '../../context/mobileContext';\nimport {useTheme} from '../../context/theme';\nimport {Col, Grid, Row} from '../../grid';\nimport {ClassNameProps, HeaderBlockBackground, HeaderBlockProps} from '../../models';\nimport {block, getThemedValue} from '../../utils';\nimport {mergeVideoMicrodata} from '../../utils/microdata';\n\nimport {getImageSize, getTitleSizes, titleWithImageSizes} from './utils';\nimport './Header.scss';\n\nconst b = block('header-block');\n\ntype HeaderBlockFullProps = HeaderBlockProps & ClassNameProps;\n\ninterface BackgroundProps {\n background: HeaderBlockBackground;\n isMobile: boolean;\n}\n\nconst Background = ({background, isMobile}: BackgroundProps) => {\n const {url, image, fullWidthMedia, video, color} = background;\n const imageObject = url ? getMediaImage(url) : image;\n const renderMedia = !isMobile || (typeof image === 'object' && 'mobile' in image);\n\n return (\n <div\n className={b('background', {media: true, 'full-width-media': fullWidthMedia})}\n style={{backgroundColor: color}}\n >\n {renderMedia && (\n <Media\n {...background}\n className={b('background-media')}\n imageClassName={b('image')}\n videoClassName={b('video')}\n isBackground={true}\n parallax={false}\n video={isMobile ? undefined : video}\n image={imageObject}\n />\n )}\n </div>\n );\n};\n\ninterface FullWidthBackgroundProps {\n background: HeaderBlockBackground;\n}\n\nconst FullWidthBackground = ({background}: FullWidthBackgroundProps) => (\n <div\n className={b('background', {['full-width']: true})}\n style={{backgroundColor: background?.color}}\n />\n);\n\nexport const HeaderBlock = (props: React.PropsWithChildren<HeaderBlockFullProps>) => {\n const {\n title,\n overtitle,\n description,\n buttons,\n image,\n video,\n width = 'm',\n imageSize,\n offset = 'default',\n background,\n theme: textTheme = 'light',\n verticalOffset = 'm',\n className,\n breadcrumbs,\n status,\n renderTitle,\n children,\n mediaView = 'full',\n centered,\n additionalInfo,\n } = props;\n const isMobile = React.useContext(MobileContext);\n const theme = useTheme();\n const hasRightSideImage = Boolean((image || video) && !centered);\n const curImageSize = imageSize || getImageSize(width);\n const titleSizes = hasRightSideImage ? titleWithImageSizes(curImageSize) : getTitleSizes(width);\n let curVerticalOffset = verticalOffset;\n\n if (hasRightSideImage && !verticalOffset) {\n curVerticalOffset = 'm';\n }\n\n const backgroundThemed = background && getThemedValue(background, theme);\n const imageThemed = image && getThemedValue(image, theme);\n const videoThemed = video && getThemedValue(video, theme);\n const mediaWithMicrodata = mergeVideoMicrodata(\n {video: videoThemed, image: imageThemed},\n {\n name: title,\n description,\n },\n );\n const fullWidth = backgroundThemed?.fullWidth || backgroundThemed?.fullWidthMedia;\n const titleId = useUniqId();\n\n return (\n <header\n className={b(\n {\n ['has-media']: hasRightSideImage,\n ['full-width']: fullWidth,\n ['media-view']: mediaView,\n ['controls-view']: textTheme,\n },\n className,\n )}\n >\n {backgroundThemed && fullWidth && <FullWidthBackground background={backgroundThemed} />}\n {backgroundThemed && <Background background={backgroundThemed} isMobile={isMobile} />}\n <Grid containerClass={b('container-fluid')}>\n {breadcrumbs && (\n <Row className={b('breadcrumbs')}>\n <Col>\n <HeaderBreadcrumbs {...breadcrumbs} theme={textTheme} />\n </Col>\n </Row>\n )}\n <Row>\n <Col reset className={b('content-wrapper')}>\n <Row>\n <Col\n className={b('content', {\n offset,\n theme: textTheme,\n 'vertical-offset': curVerticalOffset,\n })}\n >\n <Col sizes={titleSizes} className={b('content-inner', {centered})}>\n {overtitle && (\n <div className={b('overtitle')}>\n {typeof overtitle === 'string' ? (\n <HTML>{overtitle}</HTML>\n ) : (\n overtitle\n )}\n </div>\n )}\n <h1 className={b('title')} id={titleId}>\n {status}\n {renderTitle ? renderTitle(title) : <HTML>{title}</HTML>}\n </h1>\n {description && (\n <div className={b('description', {theme: textTheme})}>\n <YFMWrapper\n content={description}\n modifiers={{\n constructor: true,\n constructorTheme: textTheme,\n }}\n />\n </div>\n )}\n {additionalInfo && (\n <div className={b('additional-info', {theme: textTheme})}>\n <YFMWrapper\n content={additionalInfo}\n modifiers={{\n constructor: true,\n constructorTheme: textTheme,\n }}\n />\n </div>\n )}\n {buttons && (\n <div className={b('buttons')} data-qa=\"header-buttons\">\n {buttons.map((button, index) => (\n <RouterLink href={button.url} key={index}>\n <Button\n key={index}\n className={b('button')}\n size=\"xl\"\n extraProps={{\n 'aria-describedby': titleId,\n ...button.extraProps,\n }}\n {...button}\n />\n </RouterLink>\n ))}\n </div>\n )}\n {children}\n </Col>\n </Col>\n </Row>\n {hasRightSideImage && (\n <Media\n className={b('media', {[curImageSize]: true})}\n videoClassName={b('video')}\n imageClassName={b('image')}\n {...mediaWithMicrodata}\n />\n )}\n </Col>\n </Row>\n </Grid>\n </header>\n );\n};\n\nexport default HeaderBlock;\n"]}
|
|
@@ -331,6 +331,11 @@ export declare const HeaderProperties: {
|
|
|
331
331
|
contentType: string;
|
|
332
332
|
inputType: string;
|
|
333
333
|
};
|
|
334
|
+
additionalInfo: {
|
|
335
|
+
type: string;
|
|
336
|
+
contentType: string;
|
|
337
|
+
inputType: string;
|
|
338
|
+
};
|
|
334
339
|
width: {
|
|
335
340
|
type: string;
|
|
336
341
|
enum: string[];
|
|
@@ -898,6 +903,11 @@ export declare const HeaderBlock: {
|
|
|
898
903
|
contentType: string;
|
|
899
904
|
inputType: string;
|
|
900
905
|
};
|
|
906
|
+
additionalInfo: {
|
|
907
|
+
type: string;
|
|
908
|
+
contentType: string;
|
|
909
|
+
inputType: string;
|
|
910
|
+
};
|
|
901
911
|
width: {
|
|
902
912
|
type: string;
|
|
903
913
|
enum: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["blocks/Header/schema.ts"],"names":[],"mappings":"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","sourcesContent":["import {ImageProps} from '../../components/Image/schema';\nimport {\n BlockBaseProps,\n ButtonBlock,\n MediaProps,\n VideoProps,\n mediaView,\n withTheme,\n} from '../../schema/validators/common';\nimport {filteredArray} from '../../schema/validators/utils';\n\nexport const HeaderBackgroundProps = {\n type: 'object',\n additionalProperties: false,\n required: [],\n properties: {\n ...MediaProps,\n fullWidth: {type: 'boolean'},\n fullWidthMedia: {type: 'boolean'},\n },\n};\n\nexport const HeaderProperties = {\n title: {\n type: 'string',\n contentType: 'text',\n },\n overtitle: {\n type: 'string',\n contentType: 'text',\n },\n description: {\n type: 'string',\n contentType: 'yfm',\n inputType: 'textarea',\n },\n width: {\n type: 'string',\n enum: ['s', 'm', 'l'],\n },\n buttons: filteredArray(ButtonBlock),\n offset: {\n type: 'string',\n enum: ['default', 'large'],\n },\n image: withTheme(ImageProps),\n video: withTheme(VideoProps),\n mediaView: {\n type: 'string',\n enum: mediaView,\n },\n backLink: {\n type: 'object',\n required: ['url', 'title'],\n properties: {\n url: {\n type: 'string',\n },\n title: {\n type: 'string',\n contentType: 'text',\n },\n },\n },\n imageSize: {\n type: 'string',\n enum: ['s', 'm'],\n },\n verticalOffset: {\n type: 'string',\n enum: ['0', 's', 'm', 'l', 'xl'],\n },\n background: withTheme(HeaderBackgroundProps),\n theme: {\n type: 'string',\n enum: ['default', 'dark'],\n },\n breadcrumbs: {\n type: 'object',\n additionalProperties: false,\n required: ['items'],\n properties: {\n items: {\n type: 'array',\n items: {\n type: 'object',\n additionalProperties: false,\n required: ['url', 'text'],\n properties: {\n url: {\n type: 'string',\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n },\n },\n },\n theme: {type: 'string', enum: ['light', 'dark']},\n },\n },\n status: {\n type: 'string',\n },\n centered: {\n type: 'boolean',\n },\n};\n\nexport const HeaderBlock = {\n 'header-block': {\n additionalProperties: false,\n required: ['title'],\n properties: {\n ...BlockBaseProps,\n ...HeaderProperties,\n },\n },\n};\n"]}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["blocks/Header/schema.ts"],"names":[],"mappings":"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","sourcesContent":["import {ImageProps} from '../../components/Image/schema';\nimport {\n BlockBaseProps,\n ButtonBlock,\n MediaProps,\n VideoProps,\n mediaView,\n withTheme,\n} from '../../schema/validators/common';\nimport {filteredArray} from '../../schema/validators/utils';\n\nexport const HeaderBackgroundProps = {\n type: 'object',\n additionalProperties: false,\n required: [],\n properties: {\n ...MediaProps,\n fullWidth: {type: 'boolean'},\n fullWidthMedia: {type: 'boolean'},\n },\n};\n\nexport const HeaderProperties = {\n title: {\n type: 'string',\n contentType: 'text',\n },\n overtitle: {\n type: 'string',\n contentType: 'text',\n },\n description: {\n type: 'string',\n contentType: 'yfm',\n inputType: 'textarea',\n },\n additionalInfo: {\n type: 'string',\n contentType: 'yfm',\n inputType: 'textarea',\n },\n width: {\n type: 'string',\n enum: ['s', 'm', 'l'],\n },\n buttons: filteredArray(ButtonBlock),\n offset: {\n type: 'string',\n enum: ['default', 'large'],\n },\n image: withTheme(ImageProps),\n video: withTheme(VideoProps),\n mediaView: {\n type: 'string',\n enum: mediaView,\n },\n backLink: {\n type: 'object',\n required: ['url', 'title'],\n properties: {\n url: {\n type: 'string',\n },\n title: {\n type: 'string',\n contentType: 'text',\n },\n },\n },\n imageSize: {\n type: 'string',\n enum: ['s', 'm'],\n },\n verticalOffset: {\n type: 'string',\n enum: ['0', 's', 'm', 'l', 'xl'],\n },\n background: withTheme(HeaderBackgroundProps),\n theme: {\n type: 'string',\n enum: ['default', 'dark'],\n },\n breadcrumbs: {\n type: 'object',\n additionalProperties: false,\n required: ['items'],\n properties: {\n items: {\n type: 'array',\n items: {\n type: 'object',\n additionalProperties: false,\n required: ['url', 'text'],\n properties: {\n url: {\n type: 'string',\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n },\n },\n },\n theme: {type: 'string', enum: ['light', 'dark']},\n },\n },\n status: {\n type: 'string',\n },\n centered: {\n type: 'boolean',\n },\n};\n\nexport const HeaderBlock = {\n 'header-block': {\n additionalProperties: false,\n required: ['title'],\n properties: {\n ...BlockBaseProps,\n ...HeaderProperties,\n },\n },\n};\n"]}
|
|
@@ -4,7 +4,7 @@ import { useUniqId } from '@gravity-ui/uikit';
|
|
|
4
4
|
import debounce from "lodash/debounce.js";
|
|
5
5
|
import get from "lodash/get.js";
|
|
6
6
|
import noop from "lodash/noop.js";
|
|
7
|
-
import
|
|
7
|
+
import _SlickSlider from 'react-slick';
|
|
8
8
|
import Anchor from "../../components/Anchor/Anchor.js";
|
|
9
9
|
import AnimateBlock from "../../components/AnimateBlock/AnimateBlock.js";
|
|
10
10
|
import OutsideClick from "../../components/OutsideClick/OutsideClick.js";
|
|
@@ -26,6 +26,9 @@ const b = block('SliderBlock');
|
|
|
26
26
|
const slick = block('slick-origin');
|
|
27
27
|
const DOT_WIDTH = 8;
|
|
28
28
|
const DOT_GAP = 16;
|
|
29
|
+
const SlickSlider = 'default' in _SlickSlider && _SlickSlider.default
|
|
30
|
+
? _SlickSlider.default
|
|
31
|
+
: _SlickSlider;
|
|
29
32
|
export const SliderBlock = (props) => {
|
|
30
33
|
const { animated, title, description, type, anchorId, arrows = true, adaptive, autoplay: autoplaySpeed, dots = true, dotsClassName, disclaimer, children, className, blockClassName, lazyLoad, arrowSize, onAfterChange: handleAfterChange, onBeforeChange: handleBeforeChange, } = props;
|
|
31
34
|
const { isServer } = React.useContext(SSRContext);
|