@plaudit/gutenberg-api-extensions 2.79.0 → 2.80.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/dist/blocks/MoveError.js +10 -0
- package/dist/blocks/MoveError.js.map +1 -0
- package/{build → dist}/blocks/PathError.js +7 -3
- package/dist/blocks/PathError.js.map +1 -0
- package/{build → dist}/blocks/SNPFlexibleItemsListComponent.d.ts +1 -1
- package/dist/blocks/SNPFlexibleItemsListComponent.js +18 -0
- package/dist/blocks/SNPFlexibleItemsListComponent.js.map +1 -0
- package/{build → dist}/blocks/SNPGroupComponent.d.ts +2 -2
- package/dist/blocks/SNPGroupComponent.js +20 -0
- package/dist/blocks/SNPGroupComponent.js.map +1 -0
- package/{build → dist}/blocks/SNPListComponent.d.ts +1 -1
- package/dist/blocks/SNPListComponent.js +18 -0
- package/dist/blocks/SNPListComponent.js.map +1 -0
- package/dist/blocks/SNPTreeContext.js +14 -0
- package/dist/blocks/SNPTreeContext.js.map +1 -0
- package/dist/blocks/basic-custom-block-bindings-support.js +157 -0
- package/dist/blocks/basic-custom-block-bindings-support.js.map +1 -0
- package/dist/blocks/common-native-property-constructors.d.ts +13 -0
- package/{build → dist}/blocks/common-native-property-constructors.js +105 -151
- package/dist/blocks/common-native-property-constructors.js.map +1 -0
- package/{build → dist}/blocks/conditions.js +12 -7
- package/dist/blocks/conditions.js.map +1 -0
- package/dist/blocks/csnp-api.d.ts +166 -0
- package/dist/blocks/csnp-api.js +74 -0
- package/dist/blocks/csnp-api.js.map +1 -0
- package/{build → dist}/blocks/data-controller-manager.js +4 -1
- package/dist/blocks/data-controller-manager.js.map +1 -0
- package/{build → dist}/blocks/data-controller.js +74 -70
- package/dist/blocks/data-controller.js.map +1 -0
- package/{build → dist}/blocks/hooks/built-in-suspendable-option-protocols/select.js +14 -11
- package/dist/blocks/hooks/built-in-suspendable-option-protocols/select.js.map +1 -0
- package/{build → dist}/blocks/hooks/built-in-suspendable-option-protocols/settings.js +9 -6
- package/dist/blocks/hooks/built-in-suspendable-option-protocols/settings.js.map +1 -0
- package/{build → dist}/blocks/hooks/useSuspendableOptions.d.ts +1 -1
- package/{build → dist}/blocks/hooks/useSuspendableOptions.js +30 -23
- package/dist/blocks/hooks/useSuspendableOptions.js.map +1 -0
- package/dist/blocks/index.js +35 -0
- package/dist/blocks/index.js.map +1 -0
- package/{build → dist}/blocks/layered-styles-api.d.ts +2 -2
- package/{build → dist}/blocks/layered-styles-api.js +10 -6
- package/dist/blocks/layered-styles-api.js.map +1 -0
- package/{build → dist}/blocks/layered-styles-impl.js +14 -9
- package/dist/blocks/layered-styles-impl.js.map +1 -0
- package/{build → dist}/blocks/layout/LaidOutProperty.d.ts +1 -2
- package/dist/blocks/layout/LaidOutProperty.js +47 -0
- package/dist/blocks/layout/LaidOutProperty.js.map +1 -0
- package/dist/blocks/layout/LaidOutPropertyRow.js +15 -0
- package/dist/blocks/layout/LaidOutPropertyRow.js.map +1 -0
- package/{build → dist}/blocks/layout/NodeContext.d.ts +2 -2
- package/dist/blocks/layout/NodeContext.js +44 -0
- package/dist/blocks/layout/NodeContext.js.map +1 -0
- package/dist/blocks/layout/PanelRoot.js +29 -0
- package/dist/blocks/layout/PanelRoot.js.map +1 -0
- package/{build → dist}/blocks/layout/TabsRoot.js +16 -13
- package/dist/blocks/layout/TabsRoot.js.map +1 -0
- package/dist/blocks/layout/ToolsPanelContext.js +23 -0
- package/dist/blocks/layout/ToolsPanelContext.js.map +1 -0
- package/dist/blocks/shared-exportable-types.js +3 -0
- package/dist/blocks/shared-internal-types.js +3 -0
- package/{build → dist}/blocks/simple-block.d.ts +1 -1
- package/dist/blocks/simple-block.js +45 -0
- package/dist/blocks/simple-block.js.map +1 -0
- package/{build → dist}/blocks/simple-native-property-api.d.ts +1 -1
- package/{build → dist}/blocks/simple-native-property-api.js +16 -10
- package/dist/blocks/simple-native-property-api.js.map +1 -0
- package/{build → dist}/blocks/simple-native-property-impl.js +60 -55
- package/dist/blocks/simple-native-property-impl.js.map +1 -0
- package/{build → dist}/blocks/simple-native-property-internal-shared.js +6 -2
- package/dist/blocks/simple-native-property-internal-shared.js.map +1 -0
- package/{build → dist}/blocks/snp-api.d.ts +1 -0
- package/dist/blocks/snp-api.js +7 -0
- package/dist/blocks/snp-api.js.map +1 -0
- package/{build → dist}/blocks/snp-data-store.js +8 -4
- package/dist/blocks/snp-data-store.js.map +1 -0
- package/{build → dist}/blocks/utilities.d.ts +1 -1
- package/dist/blocks/utilities.js +79 -0
- package/dist/blocks/utilities.js.map +1 -0
- package/{build → dist}/controls/AsynchronousFormTokenField.d.ts +1 -1
- package/dist/controls/AsynchronousFormTokenField.js +36 -0
- package/dist/controls/AsynchronousFormTokenField.js.map +1 -0
- package/{build → dist}/controls/BaseSortableItemsControl.d.ts +3 -3
- package/dist/controls/BaseSortableItemsControl.js +25 -0
- package/dist/controls/BaseSortableItemsControl.js.map +1 -0
- package/{build → dist}/controls/ExtendedFormTokenField.d.ts +3 -3
- package/dist/controls/ExtendedFormTokenField.js +64 -0
- package/dist/controls/ExtendedFormTokenField.js.map +1 -0
- package/dist/controls/ExtendedPostPicker.js +28 -0
- package/dist/controls/ExtendedPostPicker.js.map +1 -0
- package/dist/controls/ExtendedRadioControl.d.ts +12 -0
- package/dist/controls/ExtendedRadioControl.js +33 -0
- package/dist/controls/ExtendedRadioControl.js.map +1 -0
- package/{build → dist}/controls/ExtendedTaxonomyPicker.d.ts +1 -1
- package/dist/controls/ExtendedTaxonomyPicker.js +71 -0
- package/dist/controls/ExtendedTaxonomyPicker.js.map +1 -0
- package/{build → dist}/controls/ExtendedTermPicker.d.ts +1 -1
- package/dist/controls/ExtendedTermPicker.js +33 -0
- package/dist/controls/ExtendedTermPicker.js.map +1 -0
- package/dist/controls/ExtendedTextareaControl.d.ts +12 -0
- package/{build → dist}/controls/ExtendedTextareaControl.js +15 -12
- package/dist/controls/ExtendedTextareaControl.js.map +1 -0
- package/dist/controls/ExtendedUserPicker.js +28 -0
- package/dist/controls/ExtendedUserPicker.js.map +1 -0
- package/{build → dist}/controls/FullSizeToggleControl.d.ts +6 -4
- package/dist/controls/FullSizeToggleControl.js +110 -0
- package/dist/controls/FullSizeToggleControl.js.map +1 -0
- package/{build → dist}/controls/ImageControl.d.ts +1 -1
- package/dist/controls/ImageControl.js +81 -0
- package/dist/controls/ImageControl.js.map +1 -0
- package/{build → dist}/controls/InspectorPanel.d.ts +4 -3
- package/dist/controls/InspectorPanel.js +29 -0
- package/dist/controls/InspectorPanel.js.map +1 -0
- package/{build → dist}/controls/LazySuggestionsComboboxControl.d.ts +5 -1
- package/dist/controls/LazySuggestionsComboboxControl.js +32 -0
- package/dist/controls/LazySuggestionsComboboxControl.js.map +1 -0
- package/{build → dist}/controls/MultiSelectControl.d.ts +1 -1
- package/dist/controls/MultiSelectControl.js +33 -0
- package/dist/controls/MultiSelectControl.js.map +1 -0
- package/{build → dist}/controls/PickOne.d.ts +1 -1
- package/dist/controls/PickOne.js +54 -0
- package/dist/controls/PickOne.js.map +1 -0
- package/{build → dist}/controls/PromisableComponent.d.ts +2 -2
- package/{build → dist}/controls/PromisableComponent.js +14 -11
- package/dist/controls/PromisableComponent.js.map +1 -0
- package/{build → dist}/controls/ProperLinkControl.d.ts +1 -1
- package/dist/controls/ProperLinkControl.js +59 -0
- package/dist/controls/ProperLinkControl.js.map +1 -0
- package/dist/controls/SimpleToggle.js +11 -0
- package/dist/controls/SimpleToggle.js.map +1 -0
- package/dist/controls/SortableFlexibleItemsControl.js +18 -0
- package/dist/controls/SortableFlexibleItemsControl.js.map +1 -0
- package/dist/controls/SortableItemsControl.js +15 -0
- package/dist/controls/SortableItemsControl.js.map +1 -0
- package/{build → dist}/controls/basicNumericallyIdedItemPicker.d.ts +1 -1
- package/dist/controls/basicNumericallyIdedItemPicker.js +37 -0
- package/dist/controls/basicNumericallyIdedItemPicker.js.map +1 -0
- package/{build → dist}/controls/hooks/useImprovedTokenManager.d.ts +7 -5
- package/{build → dist}/controls/hooks/useImprovedTokenManager.js +21 -15
- package/dist/controls/hooks/useImprovedTokenManager.js.map +1 -0
- package/{build → dist}/controls/hooks/useMultiSingleConversionLayer.d.ts +1 -1
- package/dist/controls/hooks/useMultiSingleConversionLayer.js +14 -0
- package/dist/controls/hooks/useMultiSingleConversionLayer.js.map +1 -0
- package/dist/controls/hooks/useNonRenderingCounter.js +9 -0
- package/dist/controls/hooks/useNonRenderingCounter.js.map +1 -0
- package/{build → dist}/controls/hooks/useOutputMemoizingFilter.js +7 -4
- package/dist/controls/hooks/useOutputMemoizingFilter.js.map +1 -0
- package/{build → dist}/controls/hooks/useSortableItemsModel.js +14 -11
- package/dist/controls/hooks/useSortableItemsModel.js.map +1 -0
- package/{build → dist}/controls/hooks/useSuggestions.js +16 -13
- package/dist/controls/hooks/useSuggestions.js.map +1 -0
- package/{build → dist}/controls/hooks/useTokenManager.d.ts +5 -3
- package/{build → dist}/controls/hooks/useTokenManager.js +37 -34
- package/dist/controls/hooks/useTokenManager.js.map +1 -0
- package/dist/controls/index.js +41 -0
- package/dist/controls/index.js.map +1 -0
- package/{build → dist}/controls/shared.js +18 -8
- package/dist/controls/shared.js.map +1 -0
- package/dist/controls/types.js +3 -0
- package/dist/editor/post-featured-image.js +125 -0
- package/dist/editor/post-featured-image.js.map +1 -0
- package/dist/editor/simple-gutenberg-endpoints-api.js +26 -0
- package/dist/editor/simple-gutenberg-endpoints-api.js.map +1 -0
- package/{build → dist}/editor/simple-gutenberg-endpoints-impl.js +24 -17
- package/dist/editor/simple-gutenberg-endpoints-impl.js.map +1 -0
- package/dist/index.js +39 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js +27 -0
- package/dist/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js.map +1 -0
- package/{build → dist}/lib/gutenberg-api-extensions-state/general-logic.js +12 -8
- package/dist/lib/gutenberg-api-extensions-state/general-logic.js.map +1 -0
- package/{build → dist}/lib/gutenberg-api-extensions-state/layered-block-styles-logic.js +10 -6
- package/dist/lib/gutenberg-api-extensions-state/layered-block-styles-logic.js.map +1 -0
- package/{build → dist}/lib/gutenberg-api-extensions-state/snp-logic.js +33 -26
- package/dist/lib/gutenberg-api-extensions-state/snp-logic.js.map +1 -0
- package/{build → dist}/lib/gutenberg-api-extensions-state.d.ts +2 -2
- package/dist/lib/gutenberg-api-extensions-state.js +52 -0
- package/dist/lib/gutenberg-api-extensions-state.js.map +1 -0
- package/{build → dist}/lib/helpers.d.ts +3 -3
- package/{build → dist}/lib/helpers.js +13 -6
- package/dist/lib/helpers.js.map +1 -0
- package/dist/lib/plaudit-icons/column-1.js +6 -0
- package/dist/lib/plaudit-icons/column-1.js.map +1 -0
- package/dist/lib/plaudit-icons/column-2.js +6 -0
- package/dist/lib/plaudit-icons/column-2.js.map +1 -0
- package/dist/lib/plaudit-icons/column-3.js +6 -0
- package/dist/lib/plaudit-icons/column-3.js.map +1 -0
- package/dist/lib/plaudit-icons/placement-center.js +6 -0
- package/dist/lib/plaudit-icons/placement-center.js.map +1 -0
- package/dist/lib/plaudit-icons/placement-end.js +6 -0
- package/dist/lib/plaudit-icons/placement-end.js.map +1 -0
- package/dist/lib/plaudit-icons/placement-start.js +6 -0
- package/dist/lib/plaudit-icons/placement-start.js.map +1 -0
- package/dist/lib/plaudit-icons/placement-stretch.js +6 -0
- package/dist/lib/plaudit-icons/placement-stretch.js.map +1 -0
- package/dist/lib/plaudit-icons/plaudit-icon.js +6 -0
- package/dist/lib/plaudit-icons/plaudit-icon.js.map +1 -0
- package/dist/lib/plaudit-icons/reusable-block-marker.js +6 -0
- package/{build → dist}/lib/plaudit-icons/reusable-block-marker.js.map +1 -1
- package/dist/lib/plaudit-icons.js +29 -0
- package/dist/lib/plaudit-icons.js.map +1 -0
- package/{build → dist}/lib/suspense/promise-handlers.js +16 -7
- package/dist/lib/suspense/promise-handlers.js.map +1 -0
- package/{build → dist}/lib/suspense.d.ts +2 -2
- package/dist/lib/suspense.js +31 -0
- package/dist/lib/suspense.js.map +1 -0
- package/{build → dist}/lib/useful-types.d.ts +4 -1
- package/dist/lib/useful-types.js +11 -0
- package/dist/lib/useful-types.js.map +1 -0
- package/package.json +22 -30
- package/src/blocks/MoveError.ts +7 -0
- package/src/blocks/PathError.ts +18 -0
- package/src/blocks/SNPFlexibleItemsListComponent.tsx +30 -0
- package/src/blocks/SNPGroupComponent.tsx +38 -0
- package/src/blocks/SNPListComponent.tsx +25 -0
- package/src/blocks/SNPTreeContext.tsx +13 -0
- package/src/blocks/basic-custom-block-bindings-support.tsx +243 -0
- package/src/blocks/common-native-property-constructors.tsx +877 -0
- package/src/blocks/conditions.ts +260 -0
- package/src/blocks/csnp-api.ts +214 -0
- package/src/blocks/data-controller-manager.ts +50 -0
- package/src/blocks/data-controller.ts +736 -0
- package/src/blocks/hooks/built-in-suspendable-option-protocols/select.ts +51 -0
- package/src/blocks/hooks/built-in-suspendable-option-protocols/settings.ts +70 -0
- package/src/blocks/hooks/useSuspendableOptions.ts +123 -0
- package/src/blocks/index.ts +20 -0
- package/src/blocks/layered-styles-api.ts +142 -0
- package/src/blocks/layered-styles-impl.ts +94 -0
- package/src/blocks/layout/LaidOutProperty.tsx +72 -0
- package/src/blocks/layout/LaidOutPropertyRow.tsx +22 -0
- package/src/blocks/layout/NodeContext.tsx +54 -0
- package/src/blocks/layout/PanelRoot.tsx +33 -0
- package/src/blocks/layout/TabsRoot.tsx +56 -0
- package/src/blocks/layout/ToolsPanelContext.tsx +22 -0
- package/src/blocks/shared-exportable-types.ts +6 -0
- package/src/blocks/shared-internal-types.ts +18 -0
- package/src/blocks/simple-block.tsx +74 -0
- package/src/blocks/simple-native-property-api.ts +170 -0
- package/src/blocks/simple-native-property-impl.tsx +329 -0
- package/src/blocks/simple-native-property-internal-shared.ts +46 -0
- package/src/blocks/snp-api.ts +5 -0
- package/src/blocks/snp-data-store.ts +66 -0
- package/src/blocks/utilities.ts +80 -0
- package/src/controls/AsynchronousFormTokenField.tsx +85 -0
- package/src/controls/BaseSortableItemsControl.tsx +84 -0
- package/src/controls/ExtendedFormTokenField.tsx +121 -0
- package/src/controls/ExtendedPostPicker.ts +57 -0
- package/src/controls/ExtendedRadioControl.tsx +107 -0
- package/src/controls/ExtendedTaxonomyPicker.tsx +100 -0
- package/src/controls/ExtendedTermPicker.tsx +62 -0
- package/src/controls/ExtendedTextareaControl.tsx +65 -0
- package/src/controls/ExtendedUserPicker.ts +56 -0
- package/src/controls/FullSizeToggleControl.tsx +94 -0
- package/src/controls/ImageControl.tsx +143 -0
- package/src/controls/InspectorPanel.tsx +37 -0
- package/src/controls/LazySuggestionsComboboxControl.tsx +62 -0
- package/src/controls/MultiSelectControl.tsx +59 -0
- package/src/controls/PickOne.tsx +84 -0
- package/src/controls/PromisableComponent.tsx +56 -0
- package/src/controls/ProperLinkControl.tsx +93 -0
- package/src/controls/SimpleToggle.tsx +9 -0
- package/src/controls/SortableFlexibleItemsControl.tsx +35 -0
- package/src/controls/SortableItemsControl.tsx +18 -0
- package/src/controls/basicNumericallyIdedItemPicker.tsx +76 -0
- package/src/controls/hooks/useImprovedTokenManager.ts +157 -0
- package/src/controls/hooks/useMultiSingleConversionLayer.ts +17 -0
- package/src/controls/hooks/useNonRenderingCounter.ts +6 -0
- package/src/controls/hooks/useOutputMemoizingFilter.ts +16 -0
- package/src/controls/hooks/useSortableItemsModel.ts +196 -0
- package/src/controls/hooks/useSuggestions.ts +91 -0
- package/src/controls/hooks/useTokenManager.ts +177 -0
- package/{build/controls/index.js → src/controls/index.ts} +3 -2
- package/src/controls/shared.ts +50 -0
- package/src/controls/types.ts +18 -0
- package/src/editor/post-featured-image.tsx +161 -0
- package/src/editor/simple-gutenberg-endpoints-api.ts +31 -0
- package/src/editor/simple-gutenberg-endpoints-impl.ts +119 -0
- package/src/index.ts +32 -0
- package/src/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.ts +34 -0
- package/src/lib/gutenberg-api-extensions-state/general-logic.ts +41 -0
- package/src/lib/gutenberg-api-extensions-state/layered-block-styles-logic.ts +42 -0
- package/src/lib/gutenberg-api-extensions-state/snp-logic.ts +240 -0
- package/src/lib/gutenberg-api-extensions-state.ts +69 -0
- package/src/lib/helpers.ts +114 -0
- package/src/lib/plaudit-icons/column-1.tsx +6 -0
- package/src/lib/plaudit-icons/column-2.tsx +6 -0
- package/src/lib/plaudit-icons/column-3.tsx +6 -0
- package/src/lib/plaudit-icons/placement-center.tsx +3 -0
- package/src/lib/plaudit-icons/placement-end.tsx +3 -0
- package/src/lib/plaudit-icons/placement-start.tsx +3 -0
- package/src/lib/plaudit-icons/placement-stretch.tsx +3 -0
- package/src/lib/plaudit-icons/plaudit-icon.tsx +4 -0
- package/src/lib/plaudit-icons/reusable-block-marker.tsx +3 -0
- package/{build/lib/plaudit-icons.js → src/lib/plaudit-icons.ts} +1 -1
- package/src/lib/suspense/promise-handlers.ts +72 -0
- package/src/lib/suspense.tsx +18 -0
- package/src/lib/useful-types.ts +65 -0
- package/build/blocks/MoveError.js +0 -6
- package/build/blocks/MoveError.js.map +0 -1
- package/build/blocks/PathError.js.map +0 -1
- package/build/blocks/SNPFlexibleItemsListComponent.js +0 -15
- package/build/blocks/SNPFlexibleItemsListComponent.js.map +0 -1
- package/build/blocks/SNPGroupComponent.js +0 -17
- package/build/blocks/SNPGroupComponent.js.map +0 -1
- package/build/blocks/SNPListComponent.js +0 -15
- package/build/blocks/SNPListComponent.js.map +0 -1
- package/build/blocks/SNPTreeContext.js +0 -10
- package/build/blocks/SNPTreeContext.js.map +0 -1
- package/build/blocks/basic-custom-block-bindings-support.js +0 -150
- package/build/blocks/basic-custom-block-bindings-support.js.map +0 -1
- package/build/blocks/common-native-property-constructors.d.ts +0 -208
- package/build/blocks/common-native-property-constructors.js.map +0 -1
- package/build/blocks/conditions.js.map +0 -1
- package/build/blocks/data-controller-manager.js.map +0 -1
- package/build/blocks/data-controller.js.map +0 -1
- package/build/blocks/hooks/built-in-suspendable-option-protocols/select.js.map +0 -1
- package/build/blocks/hooks/built-in-suspendable-option-protocols/settings.js.map +0 -1
- package/build/blocks/hooks/useSuspendableOptions.js.map +0 -1
- package/build/blocks/index.js +0 -15
- package/build/blocks/index.js.map +0 -1
- package/build/blocks/layered-styles-api.js.map +0 -1
- package/build/blocks/layered-styles-impl.js.map +0 -1
- package/build/blocks/layout/LaidOutProperty.js +0 -44
- package/build/blocks/layout/LaidOutProperty.js.map +0 -1
- package/build/blocks/layout/LaidOutPropertyRow.js +0 -12
- package/build/blocks/layout/LaidOutPropertyRow.js.map +0 -1
- package/build/blocks/layout/NodeContext.js +0 -37
- package/build/blocks/layout/NodeContext.js.map +0 -1
- package/build/blocks/layout/PanelRoot.js +0 -26
- package/build/blocks/layout/PanelRoot.js.map +0 -1
- package/build/blocks/layout/TabsRoot.js.map +0 -1
- package/build/blocks/layout/ToolsPanelContext.js +0 -18
- package/build/blocks/layout/ToolsPanelContext.js.map +0 -1
- package/build/blocks/shared-exportable-types.js +0 -2
- package/build/blocks/shared-internal-types.js +0 -2
- package/build/blocks/simple-block.js +0 -41
- package/build/blocks/simple-block.js.map +0 -1
- package/build/blocks/simple-native-property-api.js.map +0 -1
- package/build/blocks/simple-native-property-impl.js.map +0 -1
- package/build/blocks/simple-native-property-internal-shared.js.map +0 -1
- package/build/blocks/snp-api.js +0 -2
- package/build/blocks/snp-api.js.map +0 -1
- package/build/blocks/snp-data-store.js.map +0 -1
- package/build/blocks/utilities.js +0 -67
- package/build/blocks/utilities.js.map +0 -1
- package/build/controls/AsynchronousFormTokenField.js +0 -32
- package/build/controls/AsynchronousFormTokenField.js.map +0 -1
- package/build/controls/BaseSortableItemsControl.js +0 -22
- package/build/controls/BaseSortableItemsControl.js.map +0 -1
- package/build/controls/ExtendedFormTokenField.js +0 -58
- package/build/controls/ExtendedFormTokenField.js.map +0 -1
- package/build/controls/ExtendedPostPicker.js +0 -22
- package/build/controls/ExtendedPostPicker.js.map +0 -1
- package/build/controls/ExtendedRadioControl.d.ts +0 -10
- package/build/controls/ExtendedRadioControl.js +0 -30
- package/build/controls/ExtendedRadioControl.js.map +0 -1
- package/build/controls/ExtendedTaxonomyPicker.js +0 -68
- package/build/controls/ExtendedTaxonomyPicker.js.map +0 -1
- package/build/controls/ExtendedTermPicker.js +0 -27
- package/build/controls/ExtendedTermPicker.js.map +0 -1
- package/build/controls/ExtendedTextareaControl.d.ts +0 -14
- package/build/controls/ExtendedTextareaControl.js.map +0 -1
- package/build/controls/ExtendedUserPicker.js +0 -22
- package/build/controls/ExtendedUserPicker.js.map +0 -1
- package/build/controls/FullSizeToggleControl.js +0 -70
- package/build/controls/FullSizeToggleControl.js.map +0 -1
- package/build/controls/ImageControl.js +0 -76
- package/build/controls/ImageControl.js.map +0 -1
- package/build/controls/InspectorPanel.js +0 -26
- package/build/controls/InspectorPanel.js.map +0 -1
- package/build/controls/LazySuggestionsComboboxControl.js +0 -29
- package/build/controls/LazySuggestionsComboboxControl.js.map +0 -1
- package/build/controls/MultiSelectControl.js +0 -30
- package/build/controls/MultiSelectControl.js.map +0 -1
- package/build/controls/PickOne.js +0 -48
- package/build/controls/PickOne.js.map +0 -1
- package/build/controls/PromisableComponent.js.map +0 -1
- package/build/controls/ProperLinkControl.js +0 -56
- package/build/controls/ProperLinkControl.js.map +0 -1
- package/build/controls/SimpleToggle.js +0 -8
- package/build/controls/SimpleToggle.js.map +0 -1
- package/build/controls/SortableFlexibleItemsControl.js +0 -15
- package/build/controls/SortableFlexibleItemsControl.js.map +0 -1
- package/build/controls/SortableItemsControl.js +0 -12
- package/build/controls/SortableItemsControl.js.map +0 -1
- package/build/controls/basicNumericallyIdedItemPicker.js +0 -34
- package/build/controls/basicNumericallyIdedItemPicker.js.map +0 -1
- package/build/controls/hooks/useImprovedTokenManager.js.map +0 -1
- package/build/controls/hooks/useMultiSingleConversionLayer.js +0 -11
- package/build/controls/hooks/useMultiSingleConversionLayer.js.map +0 -1
- package/build/controls/hooks/useNonRenderingCounter.js +0 -6
- package/build/controls/hooks/useNonRenderingCounter.js.map +0 -1
- package/build/controls/hooks/useOutputMemoizingFilter.js.map +0 -1
- package/build/controls/hooks/useSortableItemsModel.js.map +0 -1
- package/build/controls/hooks/useSuggestions.js.map +0 -1
- package/build/controls/hooks/useTokenManager.js.map +0 -1
- package/build/controls/index.js.map +0 -1
- package/build/controls/shared.js.map +0 -1
- package/build/controls/types.js +0 -2
- package/build/editor/post-featured-image.js +0 -122
- package/build/editor/post-featured-image.js.map +0 -1
- package/build/editor/simple-gutenberg-endpoints-api.js +0 -22
- package/build/editor/simple-gutenberg-endpoints-api.js.map +0 -1
- package/build/editor/simple-gutenberg-endpoints-impl.js.map +0 -1
- package/build/index.js +0 -22
- package/build/index.js.map +0 -1
- package/build/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js +0 -23
- package/build/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js.map +0 -1
- package/build/lib/gutenberg-api-extensions-state/general-logic.js.map +0 -1
- package/build/lib/gutenberg-api-extensions-state/layered-block-styles-logic.js.map +0 -1
- package/build/lib/gutenberg-api-extensions-state/snp-logic.js.map +0 -1
- package/build/lib/gutenberg-api-extensions-state.js +0 -48
- package/build/lib/gutenberg-api-extensions-state.js.map +0 -1
- package/build/lib/helpers.js.map +0 -1
- package/build/lib/plaudit-icons/column-1.js +0 -3
- package/build/lib/plaudit-icons/column-1.js.map +0 -1
- package/build/lib/plaudit-icons/column-2.js +0 -3
- package/build/lib/plaudit-icons/column-2.js.map +0 -1
- package/build/lib/plaudit-icons/column-3.js +0 -3
- package/build/lib/plaudit-icons/column-3.js.map +0 -1
- package/build/lib/plaudit-icons/placement-center.js +0 -3
- package/build/lib/plaudit-icons/placement-center.js.map +0 -1
- package/build/lib/plaudit-icons/placement-end.js +0 -3
- package/build/lib/plaudit-icons/placement-end.js.map +0 -1
- package/build/lib/plaudit-icons/placement-start.js +0 -3
- package/build/lib/plaudit-icons/placement-start.js.map +0 -1
- package/build/lib/plaudit-icons/placement-stretch.js +0 -3
- package/build/lib/plaudit-icons/placement-stretch.js.map +0 -1
- package/build/lib/plaudit-icons/plaudit-icon.js +0 -3
- package/build/lib/plaudit-icons/plaudit-icon.js.map +0 -1
- package/build/lib/plaudit-icons/reusable-block-marker.js +0 -3
- package/build/lib/plaudit-icons.js.map +0 -1
- package/build/lib/suspense/promise-handlers.js.map +0 -1
- package/build/lib/suspense.js +0 -14
- package/build/lib/suspense.js.map +0 -1
- package/build/lib/useful-types.js +0 -7
- package/build/lib/useful-types.js.map +0 -1
- /package/{build → dist}/blocks/MoveError.d.ts +0 -0
- /package/{build → dist}/blocks/PathError.d.ts +0 -0
- /package/{build → dist}/blocks/SNPTreeContext.d.ts +0 -0
- /package/{build → dist}/blocks/basic-custom-block-bindings-support.d.ts +0 -0
- /package/{build → dist}/blocks/conditions.d.ts +0 -0
- /package/{build → dist}/blocks/data-controller-manager.d.ts +0 -0
- /package/{build → dist}/blocks/data-controller.d.ts +0 -0
- /package/{build → dist}/blocks/hooks/built-in-suspendable-option-protocols/select.d.ts +0 -0
- /package/{build → dist}/blocks/hooks/built-in-suspendable-option-protocols/settings.d.ts +0 -0
- /package/{build → dist}/blocks/index.d.ts +0 -0
- /package/{build → dist}/blocks/layered-styles-impl.d.ts +0 -0
- /package/{build → dist}/blocks/layout/LaidOutPropertyRow.d.ts +0 -0
- /package/{build → dist}/blocks/layout/PanelRoot.d.ts +0 -0
- /package/{build → dist}/blocks/layout/TabsRoot.d.ts +0 -0
- /package/{build → dist}/blocks/layout/ToolsPanelContext.d.ts +0 -0
- /package/{build → dist}/blocks/shared-exportable-types.d.ts +0 -0
- /package/{build → dist}/blocks/shared-exportable-types.js.map +0 -0
- /package/{build → dist}/blocks/shared-internal-types.d.ts +0 -0
- /package/{build → dist}/blocks/shared-internal-types.js.map +0 -0
- /package/{build → dist}/blocks/simple-native-property-impl.d.ts +0 -0
- /package/{build → dist}/blocks/simple-native-property-internal-shared.d.ts +0 -0
- /package/{build → dist}/blocks/snp-data-store.d.ts +0 -0
- /package/{build → dist}/controls/ExtendedPostPicker.d.ts +0 -0
- /package/{build → dist}/controls/ExtendedUserPicker.d.ts +0 -0
- /package/{build → dist}/controls/SimpleToggle.d.ts +0 -0
- /package/{build → dist}/controls/SortableFlexibleItemsControl.d.ts +0 -0
- /package/{build → dist}/controls/SortableItemsControl.d.ts +0 -0
- /package/{build → dist}/controls/hooks/useNonRenderingCounter.d.ts +0 -0
- /package/{build → dist}/controls/hooks/useOutputMemoizingFilter.d.ts +0 -0
- /package/{build → dist}/controls/hooks/useSortableItemsModel.d.ts +0 -0
- /package/{build → dist}/controls/hooks/useSuggestions.d.ts +0 -0
- /package/{build → dist}/controls/index.d.ts +0 -0
- /package/{build → dist}/controls/shared.d.ts +0 -0
- /package/{build → dist}/controls/types.d.ts +0 -0
- /package/{build → dist}/controls/types.js.map +0 -0
- /package/{build → dist}/editor/post-featured-image.d.ts +0 -0
- /package/{build → dist}/editor/simple-gutenberg-endpoints-api.d.ts +0 -0
- /package/{build → dist}/editor/simple-gutenberg-endpoints-impl.d.ts +0 -0
- /package/{build → dist}/index.d.ts +0 -0
- /package/{build → dist}/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.d.ts +0 -0
- /package/{build → dist}/lib/gutenberg-api-extensions-state/general-logic.d.ts +0 -0
- /package/{build → dist}/lib/gutenberg-api-extensions-state/layered-block-styles-logic.d.ts +0 -0
- /package/{build → dist}/lib/gutenberg-api-extensions-state/snp-logic.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/column-1.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/column-2.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/column-3.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/placement-center.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/placement-end.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/placement-start.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/placement-stretch.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/plaudit-icon.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons/reusable-block-marker.d.ts +0 -0
- /package/{build → dist}/lib/plaudit-icons.d.ts +0 -0
- /package/{build → dist}/lib/suspense/promise-handlers.d.ts +0 -0
|
@@ -1,41 +1,48 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.isSuspendableOptions = isSuspendableOptions;
|
|
7
|
+
exports.useSuspendableOptions = useSuspendableOptions;
|
|
8
|
+
const data_1 = require("@wordpress/data");
|
|
9
|
+
const element_1 = require("@wordpress/element");
|
|
10
|
+
const hooks_1 = require("@wordpress/hooks");
|
|
11
|
+
const NodeContext_1 = require("../layout/NodeContext");
|
|
12
|
+
const promise_handlers_1 = require("../../lib/suspense/promise-handlers");
|
|
13
|
+
const utilities_1 = require("../utilities");
|
|
14
|
+
function isSuspendableOptions(thing) {
|
|
8
15
|
return typeof thing === 'string' || thing instanceof URL;
|
|
9
16
|
}
|
|
10
|
-
|
|
11
|
-
const rawOptions = isPromise(config.options) ? use(config.options) : config.options;
|
|
17
|
+
function useSuspendableOptions(config) {
|
|
18
|
+
const rawOptions = (0, promise_handlers_1.isPromise)(config.options) ? (0, promise_handlers_1.use)(config.options) : config.options;
|
|
12
19
|
if (isSuspendableOptions(rawOptions)) {
|
|
13
20
|
const selectorInfo = toSuspendableOptionsURI(rawOptions);
|
|
14
|
-
const nodeContext = useNodeContext("get contextual options");
|
|
21
|
+
const nodeContext = (0, NodeContext_1.useNodeContext)("get contextual options");
|
|
15
22
|
const blockClientId = nodeContext.dataController.blockClientId;
|
|
16
|
-
const usesBlockAttributes = applyFilters('plaudit.gutenbergApiExtensions.simpleNativeProperties.suspendableOptions.usesBlockAttributes', selectorInfo.searchParams.has("attributes"), selectorInfo, blockClientId);
|
|
23
|
+
const usesBlockAttributes = (0, hooks_1.applyFilters)('plaudit.gutenbergApiExtensions.simpleNativeProperties.suspendableOptions.usesBlockAttributes', selectorInfo.searchParams.has("attributes"), selectorInfo, blockClientId);
|
|
17
24
|
// This if/else statement is present because actually passing attributes through to the selectors represents a SEVERE relative performance hit.
|
|
18
25
|
// At a minimum, it causes at leat one additional full execution pass, and, due to how data can be cached, that pass is almost guaranteed to turn into at least one full render.
|
|
19
26
|
let mapSelect;
|
|
20
27
|
if (usesBlockAttributes) {
|
|
21
28
|
mapSelect = wrappedSelect => {
|
|
22
|
-
const selected = wrappedSelect(blockEditorStore);
|
|
29
|
+
const selected = wrappedSelect(utilities_1.blockEditorStore);
|
|
23
30
|
return [selected.getBlockAttributes(blockClientId), selected.getBlockName(blockClientId)];
|
|
24
31
|
};
|
|
25
32
|
}
|
|
26
33
|
else {
|
|
27
|
-
mapSelect = wrappedSelect => [null, wrappedSelect(blockEditorStore).getBlockName(blockClientId)];
|
|
34
|
+
mapSelect = wrappedSelect => [null, wrappedSelect(utilities_1.blockEditorStore).getBlockName(blockClientId)];
|
|
28
35
|
}
|
|
29
|
-
const [attributes, blockName] = useSelect(mapSelect, [blockClientId]);
|
|
30
|
-
const potentiallyPromisedOptions = applyFilters('plaudit.gutenbergApiExtensions.simpleNativeProperties.suspendableOptions.resolve', undefined, selectorInfo, { attributes, blockName });
|
|
36
|
+
const [attributes, blockName] = (0, data_1.useSelect)(mapSelect, [blockClientId]);
|
|
37
|
+
const potentiallyPromisedOptions = (0, hooks_1.applyFilters)('plaudit.gutenbergApiExtensions.simpleNativeProperties.suspendableOptions.resolve', undefined, selectorInfo, { attributes, blockName });
|
|
31
38
|
if (potentiallyPromisedOptions === undefined) {
|
|
32
39
|
throw new Error(`Encountered an unsupported suspendable option request: ${rawOptions}`);
|
|
33
40
|
}
|
|
34
41
|
// selectorInfo is guaranteed to be valid by virtue of the checks performed while getting the handler
|
|
35
42
|
const options = potentiallyPromisedOptions && typeof potentiallyPromisedOptions === 'object' && 'then' in potentiallyPromisedOptions
|
|
36
|
-
? use(potentiallyPromisedOptions) : potentiallyPromisedOptions;
|
|
37
|
-
return useMemo(() => {
|
|
38
|
-
return applyFilters('plaudit.gutenbergApiExtensions.simpleNativeProperties.suspendableOptions.postProcess', options, selectorInfo, { attributes, blockName });
|
|
43
|
+
? (0, promise_handlers_1.use)(potentiallyPromisedOptions) : potentiallyPromisedOptions;
|
|
44
|
+
return (0, element_1.useMemo)(() => {
|
|
45
|
+
return (0, hooks_1.applyFilters)('plaudit.gutenbergApiExtensions.simpleNativeProperties.suspendableOptions.postProcess', options, selectorInfo, { attributes, blockName });
|
|
39
46
|
}, [options, selectorInfo, attributes, blockName]);
|
|
40
47
|
}
|
|
41
48
|
else {
|
|
@@ -46,7 +53,7 @@ function toSuspendableOptionsURI(rawOptions) {
|
|
|
46
53
|
if (rawOptions instanceof URL) {
|
|
47
54
|
return rawOptions;
|
|
48
55
|
}
|
|
49
|
-
return useMemo(() => {
|
|
56
|
+
return (0, element_1.useMemo)(() => {
|
|
50
57
|
try {
|
|
51
58
|
const res = new URL(rawOptions);
|
|
52
59
|
if (res.protocol === "select:") {
|
|
@@ -104,8 +111,8 @@ function toSuspendableOptionsURI(rawOptions) {
|
|
|
104
111
|
return new URL(correctedRawOptions);
|
|
105
112
|
}, [rawOptions]);
|
|
106
113
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
114
|
+
const select_1 = __importDefault(require("./built-in-suspendable-option-protocols/select"));
|
|
115
|
+
const settings_1 = __importDefault(require("./built-in-suspendable-option-protocols/settings"));
|
|
116
|
+
(0, select_1.default)();
|
|
117
|
+
(0, settings_1.default)();
|
|
111
118
|
//# sourceMappingURL=useSuspendableOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSuspendableOptions.js","sourceRoot":"","sources":["../../../src/blocks/hooks/useSuspendableOptions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.registerCustomBlockBindingsSource = exports.installCustomBlockBindingsSupport = void 0;
|
|
18
|
+
exports.installGutenbergBlockExtensions = installGutenbergBlockExtensions;
|
|
19
|
+
__exportStar(require("./layered-styles-api"), exports);
|
|
20
|
+
__exportStar(require("./simple-block"), exports);
|
|
21
|
+
__exportStar(require("./shared-exportable-types"), exports);
|
|
22
|
+
__exportStar(require("./simple-native-property-api"), exports);
|
|
23
|
+
__exportStar(require("./snp-data-store"), exports);
|
|
24
|
+
__exportStar(require("./utilities"), exports);
|
|
25
|
+
var basic_custom_block_bindings_support_1 = require("./basic-custom-block-bindings-support");
|
|
26
|
+
Object.defineProperty(exports, "installCustomBlockBindingsSupport", { enumerable: true, get: function () { return basic_custom_block_bindings_support_1.installCustomBlockBindingsSupport; } });
|
|
27
|
+
Object.defineProperty(exports, "registerCustomBlockBindingsSource", { enumerable: true, get: function () { return basic_custom_block_bindings_support_1.registerCustomBlockBindingsSource; } });
|
|
28
|
+
const index_1 = require("../index");
|
|
29
|
+
/**
|
|
30
|
+
* @deprecated use installGutenbergExtensions() instead
|
|
31
|
+
*/
|
|
32
|
+
function installGutenbergBlockExtensions() {
|
|
33
|
+
(0, index_1.installGutenbergExtensions)();
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/blocks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAiBA,0EAEC;AAnBD,uDAAqC;AACrC,iDAA+B;AAC/B,4DAA0C;AAC1C,+DAA6C;AAC7C,mDAAiC;AACjC,8CAA4B;AAI5B,6FAA0I;AAAnH,wJAAA,iCAAiC,OAAA;AAAE,wJAAA,iCAAiC,OAAA;AAG3F,oCAAoD;AAEpD;;GAEG;AACH,SAAgB,+BAA+B;IAC9C,IAAA,kCAA0B,GAAE,CAAC;AAC9B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ColorPaletteCSNPConfig, CommonPropertyConfig, ToggleGroupPropertyCSNPConfig, TogglePropertyCSNPConfig } from "./
|
|
1
|
+
import type { ColorPaletteCSNPConfig, CommonPropertyConfig, ToggleGroupPropertyCSNPConfig, TogglePropertyCSNPConfig } from "./csnp-api";
|
|
2
2
|
import type { PickableOptions } from "../controls";
|
|
3
3
|
import type { BlockName } from "../lib/useful-types";
|
|
4
4
|
import { SimpleNativeProperty } from "./simple-native-property-api";
|
|
@@ -9,7 +9,7 @@ type BaseLayeredBlockStyleLayer = {
|
|
|
9
9
|
condition?: SimpleNativeProperty['condition'];
|
|
10
10
|
alwaysStore?: boolean | undefined;
|
|
11
11
|
styleProperty?: string;
|
|
12
|
-
} & Pick<CommonPropertyConfig<any, any, any>, 'help'>;
|
|
12
|
+
} & Pick<CommonPropertyConfig<any, any, any, any>, 'help'>;
|
|
13
13
|
type LayeredBlockStyleColorLayer = BaseLayeredBlockStyleLayer & {
|
|
14
14
|
picker: 'color' | 'colorPalette';
|
|
15
15
|
clearable?: boolean | undefined;
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerLayeredBlockStyles = registerLayeredBlockStyles;
|
|
4
|
+
exports.installLayeredBlockStylesSupport = installLayeredBlockStylesSupport;
|
|
5
|
+
const index_1 = require("../index");
|
|
6
|
+
const simple_native_property_api_1 = require("./simple-native-property-api");
|
|
7
|
+
function registerLayeredBlockStyles(config) {
|
|
8
|
+
(0, simple_native_property_api_1.registerSimpleNativeProperties)({
|
|
5
9
|
block: config.block,
|
|
6
10
|
properties: {
|
|
7
11
|
group: 'layered-styles',
|
|
@@ -93,7 +97,7 @@ export function registerLayeredBlockStyles(config) {
|
|
|
93
97
|
/**
|
|
94
98
|
* @deprecated use installGutenbergExtensions() instead.
|
|
95
99
|
*/
|
|
96
|
-
|
|
97
|
-
installGutenbergExtensions();
|
|
100
|
+
function installLayeredBlockStylesSupport() {
|
|
101
|
+
(0, index_1.installGutenbergExtensions)();
|
|
98
102
|
}
|
|
99
103
|
//# sourceMappingURL=layered-styles-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layered-styles-api.js","sourceRoot":"","sources":["../../src/blocks/layered-styles-api.ts"],"names":[],"mappings":";;AA4CA,gEA0FC;AAKD,4EAEC;AApID,oCAAoD;AAEpD,6EAAkG;AAiClG,SAAgB,0BAA0B,CAAC,MAAgC;IAC1E,IAAA,2DAA8B,EAAC;QAC9B,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE;YACX,KAAK,EAAE,gBAAgB;YACvB,KAAK,EAAE,gBAAgB;YACvB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBACrC,MAAM,WAAW,GAAG;oBACnB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;oBAChE,aAAa,EAAE,KAAK,CAAC,aAAa;iBAClC,CAAC;gBAEF,MAAM,SAAS,GAAG,WAAW,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,CAAC;gBACrE,IAAI,YAA8B,CAAC;gBACnC,IAAI,SAAS,EAAE,CAAC;oBACf,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;wBACnB,OAAO,CAAC,KAAK,CAAC,mBAAmB,KAAK,CAAC,KAAK,QAAQ,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,EACzH,uEAAuE,CAAC,CAAC;wBAC1E,YAAY,GAAG,EAAE,CAAC;oBACnB,CAAC;yBAAM,CAAC;wBACP,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;oBAC9B,CAAC;gBACF,CAAC;qBAAM,CAAC;oBACP,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC9B,CAAC;gBAED,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;oBACtB,KAAK,SAAS,CAAC;oBACf,KAAK,gBAAgB,CAAC;oBACtB,KAAK,aAAa;wBACjB,OAAO;4BACN,GAAG,WAAW;4BACd,SAAS;4BACT,OAAO,EAAE,aAAa;4BACtB,OAAO,EAAE,YAAY;4BACrB,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,IAAI,EAAE,KAAK,CAAC,IAAI;yBACiB,CAAC;oBACpC,KAAK,OAAO,CAAC;oBACb,KAAK,cAAc;wBAClB,OAAO;4BACN,GAAG,WAAW;4BACd,WAAW,EAAE,KAAK;4BAClB,SAAS;4BACT,OAAO,EAAE,cAAc;4BACvB,OAAO,EAAE,YAAY;4BACrB,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,IAAI,EAAE,KAAK,CAAC,IAAI;yBACU,CAAC;oBAC7B,KAAK,OAAO;wBACX,OAAO;4BACN,GAAG,WAAW;4BACd,OAAO,EAAE,OAAO;4BAChB,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,WAAW,EAAE,KAAK;4BAClB,IAAI,EAAE,KAAK,CAAC,IAAI;yBACW,CAAC;oBAC9B,KAAK,QAAQ;wBACZ,OAAO;4BACN,GAAG,WAAW;4BACd,SAAS;4BACT,OAAO,EAAE,QAAQ;4BACjB,OAAO,EAAE,YAAY;4BACrB,OAAO,EAAE,KAAK,CAAC,OAAO;4BACtB,IAAI,EAAE,KAAK,CAAC,IAAI;yBACY,CAAC;oBAC/B,KAAK,QAAQ;wBACZ,OAAO;4BACN,GAAG,WAAW;4BACd,OAAO,EAAE,QAAQ;4BACjB,OAAO,EAAE,YAAY;4BACrB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAC,KAAK,EAAE,IAAI,EAAC;4BACrC,IAAI,EAAE,KAAK,CAAC,IAAI;4BAChB,WAAW,EAAE;gCACZ,EAAE,CAAC,KAAc;oCAChB,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gCAC9I,CAAC;gCACD,IAAI,CAAC,KAAwB;oCAC5B,OAAO,KAAK,EAAE,QAAQ,EAAE,CAAC;gCAC1B,CAAC;6BACD;yBAC2B,CAAA;gBAC/B,CAAC;YACF,CAAC,CAAC;SACF;KACD,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,gCAAgC;IAC/C,IAAA,kCAA0B,GAAE,CAAC;AAC9B,CAAC"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LayeredStylesDataStore = void 0;
|
|
4
|
+
exports.extractStyleLayerValueFromAttributes = extractStyleLayerValueFromAttributes;
|
|
5
|
+
const data_1 = require("@wordpress/data");
|
|
6
|
+
const simple_native_property_impl_1 = require("./simple-native-property-impl");
|
|
7
|
+
const snp_data_store_1 = require("./snp-data-store");
|
|
8
|
+
class LayeredStylesDataStore extends snp_data_store_1.SNPDataStore {
|
|
5
9
|
getAttribute(name) {
|
|
6
10
|
if (name.startsWith("__plaudit/")) {
|
|
7
11
|
return this.blockEditProps.attributes[name];
|
|
8
12
|
}
|
|
9
|
-
const layer = select('plaudit/gutenberg-api-extensions').blockStylesLayer(this.blockEditProps.name, name);
|
|
13
|
+
const layer = (0, data_1.select)('plaudit/gutenberg-api-extensions').blockStylesLayer(this.blockEditProps.name, name);
|
|
10
14
|
if (layer === undefined) {
|
|
11
15
|
return undefined;
|
|
12
16
|
}
|
|
@@ -17,7 +21,7 @@ export class LayeredStylesDataStore extends SNPDataStore {
|
|
|
17
21
|
this.blockEditProps.setAttributes({ [name]: rawValue });
|
|
18
22
|
return;
|
|
19
23
|
}
|
|
20
|
-
const layers = select('plaudit/gutenberg-api-extensions').blockStylesLayers(this.blockEditProps.name);
|
|
24
|
+
const layers = (0, data_1.select)('plaudit/gutenberg-api-extensions').blockStylesLayers(this.blockEditProps.name);
|
|
21
25
|
if (layers === undefined) {
|
|
22
26
|
return;
|
|
23
27
|
}
|
|
@@ -32,7 +36,7 @@ export class LayeredStylesDataStore extends SNPDataStore {
|
|
|
32
36
|
if (value.length) {
|
|
33
37
|
this.blockEditProps.setAttributes({
|
|
34
38
|
className: "styleProperty" in layer && layer.styleProperty
|
|
35
|
-
? `${currentLayerClassPrefix}${value} ${makeHasPropClassName(layer.name)}`
|
|
39
|
+
? `${currentLayerClassPrefix}${value} ${(0, simple_native_property_impl_1.makeHasPropClassName)(layer.name)}`
|
|
36
40
|
: `${currentLayerClassPrefix}${value}`
|
|
37
41
|
});
|
|
38
42
|
}
|
|
@@ -66,7 +70,7 @@ export class LayeredStylesDataStore extends SNPDataStore {
|
|
|
66
70
|
if (value) {
|
|
67
71
|
layerClasses.push(`style-${name}-${value}`);
|
|
68
72
|
if ('styleProperty' in currentLayer && currentLayer.styleProperty) {
|
|
69
|
-
const hasPropClassName = makeHasPropClassName(currentLayer.name);
|
|
73
|
+
const hasPropClassName = (0, simple_native_property_impl_1.makeHasPropClassName)(currentLayer.name);
|
|
70
74
|
if (!nonLayerClasses.includes(hasPropClassName)) {
|
|
71
75
|
nonLayerClasses.push(hasPropClassName);
|
|
72
76
|
}
|
|
@@ -75,7 +79,8 @@ export class LayeredStylesDataStore extends SNPDataStore {
|
|
|
75
79
|
return [...nonLayerClasses, ...layerClasses.sort()].join(' ');
|
|
76
80
|
}
|
|
77
81
|
}
|
|
78
|
-
|
|
82
|
+
exports.LayeredStylesDataStore = LayeredStylesDataStore;
|
|
83
|
+
function extractStyleLayerValueFromAttributes(attributes, layerName) {
|
|
79
84
|
const className = attributes['className'];
|
|
80
85
|
if (typeof className !== 'string') {
|
|
81
86
|
return undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layered-styles-impl.js","sourceRoot":"","sources":["../../src/blocks/layered-styles-impl.ts"],"names":[],"mappings":";;;AAqFA,oFAQC;AA7FD,0CAAuC;AAIvC,+EAAmE;AACnE,qDAA8C;AAE9C,MAAa,sBAAuB,SAAQ,6BAAY;IACvD,YAAY,CAAC,IAAY;QACxB,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QACD,MAAM,KAAK,GAAG,IAAA,aAAM,EAAC,kCAAkC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1G,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,oCAAoC,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC;IAC1G,CAAC;IACD,YAAY,CAAC,IAAY,EAAE,QAAa;QACvC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,EAAC,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAC,CAAC,CAAC;YACtD,OAAO;QACR,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,aAAM,EAAC,kCAAkC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACtG,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO;QACR,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO;QACR,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAE9D,MAAM,KAAK,GAAG,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAC5D,MAAM,uBAAuB,GAAG,SAAS,IAAI,GAAG,CAAC;QACjD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;YACjD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;oBACjC,SAAS,EAAE,eAAe,IAAI,KAAK,IAAI,KAAK,CAAC,aAAa;wBACzD,CAAC,CAAC,GAAG,uBAAuB,GAAG,KAAK,IAAI,IAAA,kDAAoB,EAAC,KAAK,CAAC,IAAI,CAAC,EAAE;wBAC1E,CAAC,CAAC,GAAG,uBAAuB,GAAG,KAAK,EAAE;iBACvC,CAAC,CAAC;YACJ,CAAC;YACD,OAAO;QACR,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,EAAC,SAAS,EAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,EAAC,CAAC,CAAC;IAClI,CAAC;IAEO,qBAAqB,CAAC,MAAgC,EAAE,YAAoC,EAAE,IAAY,EAAE,KAAa,EAAE,SAAiB;QACnJ,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,yBAAyB,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;QAC9E,MAAM,eAAe,GAAG,UAAU;aAChC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAEzE,MAAM,gBAAgB,GAAG,MAAM;aAC7B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;aACpC,GAAG,CAAmC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;QAClF,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACnD,IAAI,UAAU,EAAE,CAAC;oBAChB,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,UAAU,EAAE,CAAC,CAAC;gBAC7C,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrE,IAAI,eAAe,EAAE,CAAC;oBACrB,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBACpC,CAAC;YACF,CAAC;QACF,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACX,YAAY,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;YAC5C,IAAI,eAAe,IAAI,YAAY,IAAI,YAAY,CAAC,aAAa,EAAE,CAAC;gBACnE,MAAM,gBAAgB,GAAG,IAAA,kDAAoB,EAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBACjE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACjD,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACxC,CAAC;YACF,CAAC;QACF,CAAC;QACD,OAAO,CAAC,GAAG,eAAe,EAAE,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;CACD;AA5ED,wDA4EC;AAED,SAAgB,oCAAoC,CAAC,UAA8C,EAAE,SAAiB;IACrH,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAC1C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,uBAAuB,GAAG,SAAS,SAAS,GAAG,CAAC;IACtD,OAAO,UAAU,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,EAAE,SAAS,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAC1J,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { HydratedSimpleNativeProperty } from "../simple-native-property-api";
|
|
2
|
-
import React from "react";
|
|
3
2
|
export type LaidOutPropertyProps = {
|
|
4
3
|
property: HydratedSimpleNativeProperty;
|
|
5
4
|
inToolsPanel?: boolean;
|
|
6
5
|
};
|
|
7
|
-
export declare const LaidOutProperty:
|
|
6
|
+
export declare const LaidOutProperty: import("react").NamedExoticComponent<LaidOutPropertyProps>;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LaidOutProperty = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const components_1 = require("@wordpress/components");
|
|
6
|
+
const element_1 = require("@wordpress/element");
|
|
7
|
+
const NodeContext_1 = require("./NodeContext");
|
|
8
|
+
const ToolsPanelContext_1 = require("./ToolsPanelContext");
|
|
9
|
+
const react_1 = require("react");
|
|
10
|
+
exports.LaidOutProperty = (0, element_1.memo)(function ({ property, inToolsPanel }) {
|
|
11
|
+
const nodeContext = (0, NodeContext_1.useNodeContext)("render a node");
|
|
12
|
+
if (nodeContext.rendered) {
|
|
13
|
+
return (0, jsx_runtime_1.jsx)(ActualPropertyRenderer, { property: property, nodeContext: nodeContext, inToolsPanel: inToolsPanel });
|
|
14
|
+
}
|
|
15
|
+
return null;
|
|
16
|
+
});
|
|
17
|
+
const divStyle = { flex: "1" };
|
|
18
|
+
function ActualPropertyRenderer({ property, nodeContext, inToolsPanel }) {
|
|
19
|
+
const [{ Slot: Label, Fill: LabelFill }, { Slot: Messages, Fill: MessagesFill }] = (0, element_1.useMemo)(() => [
|
|
20
|
+
(0, components_1.createSlotFill)(Symbol("laid-out-property-label")),
|
|
21
|
+
(0, components_1.createSlotFill)(Symbol("laid-out-property-messages"))
|
|
22
|
+
], []);
|
|
23
|
+
const onBlur = (0, element_1.useCallback)(() => nodeContext.validateNode(), [nodeContext]);
|
|
24
|
+
const classNames = ["plaudit-snp-laid-out-property"];
|
|
25
|
+
if (property.required) {
|
|
26
|
+
classNames.push("required");
|
|
27
|
+
}
|
|
28
|
+
if (nodeContext.validationError) {
|
|
29
|
+
classNames.push("has-validation-error");
|
|
30
|
+
}
|
|
31
|
+
const transformedValue = (0, element_1.useMemo)(() => property.transformer ? property.transformer.to(nodeContext.value) : nodeContext.value, [nodeContext.value, property.transformer]);
|
|
32
|
+
const onChangeWithTransform = (0, element_1.useCallback)((value) => {
|
|
33
|
+
nodeContext.setValue(property.transformer ? property.transformer.from(value) : value);
|
|
34
|
+
}, [nodeContext.setValue, property.transformer]);
|
|
35
|
+
const commonParts = (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(LabelFill, { children: [property.label, property.required && (0, jsx_runtime_1.jsx)("span", { className: "requiredMarker", children: "*" })] }), (0, jsx_runtime_1.jsx)(MessagesFill, { children: nodeContext.validationError && (0, jsx_runtime_1.jsx)("div", { className: "validation-error-message", children: nodeContext.validationError.split(/\r?\n/gi).map(line => (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [line, (0, jsx_runtime_1.jsx)("br", {})] })) }) })] });
|
|
36
|
+
if (inToolsPanel) {
|
|
37
|
+
const toolsPanelContext = (0, ToolsPanelContext_1.useToolsPanelContext)("render a tools-panel property");
|
|
38
|
+
return (0, jsx_runtime_1.jsxs)(components_1.__experimentalToolsPanelItem, { label: property.label ?? property.name, hasValue: (0, element_1.useCallback)(() => transformedValue !== undefined, [transformedValue]), onSelect: (0, element_1.useCallback)(() => nodeContext.setValue(toolsPanelContext.getDefaultValue(property.name)), [nodeContext.setValue, toolsPanelContext, property.name]), onDeselect: (0, element_1.useCallback)(() => nodeContext.setValue(undefined), [nodeContext.setValue]), resetAllFilter: (0, element_1.useCallback)((a) => a ? Object.fromEntries(Object.entries(a).filter(([name]) => name !== property.name)) : a, [property.name]), children: [commonParts, renderPropInner(property, onBlur, classNames, transformedValue, onChangeWithTransform, { Label, Messages })] });
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [commonParts, renderPropInner(property, onBlur, classNames, transformedValue, onChangeWithTransform, { Label, Messages })] });
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
function renderPropInner(property, onBlur, classNames, transformedValue, onChangeWithTransform, slots) {
|
|
45
|
+
return (0, jsx_runtime_1.jsx)("div", { style: divStyle, className: classNames.join(" "), onBlur: onBlur, "data-plaudit-snp-control-type": property.controlType, children: (0, jsx_runtime_1.jsx)(react_1.Suspense, { fallback: typeof property.initializing === 'function' ? property.initializing() : (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.Spinner, {}), " ", property.initializing] }), children: (0, jsx_runtime_1.jsx)(property.control, { value: transformedValue, onChange: onChangeWithTransform, slots: slots }) }) });
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=LaidOutProperty.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LaidOutProperty.js","sourceRoot":"","sources":["../../../src/blocks/layout/LaidOutProperty.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LaidOutPropertyRow = LaidOutPropertyRow;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const LaidOutProperty_1 = require("./LaidOutProperty");
|
|
6
|
+
const NodeContext_1 = require("./NodeContext");
|
|
7
|
+
function LaidOutPropertyRow({ property, dataController, inToolsPanel }) {
|
|
8
|
+
if (Array.isArray(property)) {
|
|
9
|
+
return (0, jsx_runtime_1.jsxs)("div", { style: { display: "flex", flexWrap: "wrap", columnGap: "8px" }, children: [...property.map(prop => (0, jsx_runtime_1.jsx)(NodeContext_1.NodeContextWrapper, { nodeName: prop.name, dataController: dataController, children: (0, jsx_runtime_1.jsx)(LaidOutProperty_1.LaidOutProperty, { property: prop, inToolsPanel: inToolsPanel }) }, prop.name))] });
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
return (0, jsx_runtime_1.jsx)(NodeContext_1.NodeContextWrapper, { nodeName: property.name, dataController: dataController, children: (0, jsx_runtime_1.jsx)(LaidOutProperty_1.LaidOutProperty, { property: property, inToolsPanel: inToolsPanel }) });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=LaidOutPropertyRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LaidOutPropertyRow.js","sourceRoot":"","sources":["../../../src/blocks/layout/LaidOutPropertyRow.tsx"],"names":[],"mappings":";;AAOA,gDAcC;;AArBD,uDAAkD;AAClD,+CAAiD;AAMjD,SAAgB,kBAAkB,CACjC,EAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAyG;IAEhJ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,iCAAK,KAAK,EAAE,EAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAC,gBACnE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAC,gCAAkB,IAAiB,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,YAC/G,uBAAC,iCAAe,IAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,GAAI,IADd,IAAI,CAAC,IAAI,CAEtC,CAAC,IACjB,CAAC;IACR,CAAC;SAAM,CAAC;QACP,OAAO,uBAAC,gCAAkB,IAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,YACjF,uBAAC,iCAAe,IAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,GAAI,GAC/C,CAAC;IACvB,CAAC;AACF,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { DataController, NodePath } from "../simple-native-property-api";
|
|
2
|
-
import
|
|
2
|
+
import type { ReactNode } from "react";
|
|
3
3
|
type NodeContextValueActions = {
|
|
4
4
|
setValue(value: any): void;
|
|
5
5
|
addNode(name: string | number, value?: any): void;
|
|
@@ -20,7 +20,7 @@ export type NodeContextValue = {
|
|
|
20
20
|
validationError?: string;
|
|
21
21
|
value: any;
|
|
22
22
|
} & NodeContextValueActions;
|
|
23
|
-
export declare const NodeContext:
|
|
23
|
+
export declare const NodeContext: import("react").Context<NodeContextValue | undefined>;
|
|
24
24
|
export declare function useNodeContext(action: string): NodeContextValue;
|
|
25
25
|
export declare function DescendantNodeContext({ nodeName, children }: {
|
|
26
26
|
nodeName: string | number;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NodeContext = void 0;
|
|
4
|
+
exports.useNodeContext = useNodeContext;
|
|
5
|
+
exports.DescendantNodeContext = DescendantNodeContext;
|
|
6
|
+
exports.RootNodeContext = RootNodeContext;
|
|
7
|
+
exports.NodeContextWrapper = NodeContextWrapper;
|
|
8
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
9
|
+
const element_1 = require("@wordpress/element");
|
|
10
|
+
exports.NodeContext = (0, element_1.createContext)(undefined);
|
|
11
|
+
function makeNodeContextValue(path, dataController) {
|
|
12
|
+
const value = dataController.getValue(path);
|
|
13
|
+
const node = dataController.getNode(path);
|
|
14
|
+
// We memoize actions separately to reduce later re-render calls
|
|
15
|
+
const actions = (0, element_1.useMemo)(() => ({
|
|
16
|
+
setValue: value => dataController.setValue(path, value),
|
|
17
|
+
addNode: (name, value) => dataController.addNode([...path, name], value),
|
|
18
|
+
removeNode: name => dataController.removeNode([...path, name]),
|
|
19
|
+
moveNode: indices => dataController.moveNode(path, indices),
|
|
20
|
+
validateNode: () => dataController.dispatch({ type: "validateNode", path })
|
|
21
|
+
}), [path, dataController]);
|
|
22
|
+
// We can skip testing path and dataController because we're checking actions
|
|
23
|
+
return (0, element_1.useMemo)(() => ({ path, dataController, rendered: node.rendered ?? true, validationError: node.validationError, value, ...actions }), [actions, node, value]);
|
|
24
|
+
}
|
|
25
|
+
function useNodeContext(action) {
|
|
26
|
+
const currentContext = (0, element_1.useContext)(exports.NodeContext);
|
|
27
|
+
if (currentContext === undefined) {
|
|
28
|
+
throw new Error(`Cannot ${action} outside of an existing NodeContext`);
|
|
29
|
+
}
|
|
30
|
+
return currentContext;
|
|
31
|
+
}
|
|
32
|
+
function DescendantNodeContext({ nodeName, children }) {
|
|
33
|
+
const currentContext = useNodeContext("create a descendant NodeContext");
|
|
34
|
+
const descendantPath = (0, element_1.useMemo)(() => currentContext.path.toSpliced(currentContext.path.length, 0, nodeName), [nodeName, currentContext.path]);
|
|
35
|
+
return (0, jsx_runtime_1.jsx)(exports.NodeContext.Provider, { value: makeNodeContextValue(descendantPath, currentContext.dataController), children: children });
|
|
36
|
+
}
|
|
37
|
+
function RootNodeContext({ nodeName, dataController, children }) {
|
|
38
|
+
const path = (0, element_1.useMemo)(() => [nodeName], [nodeName]);
|
|
39
|
+
return (0, jsx_runtime_1.jsx)(exports.NodeContext.Provider, { value: makeNodeContextValue(path, dataController), children: children });
|
|
40
|
+
}
|
|
41
|
+
function NodeContextWrapper(props) {
|
|
42
|
+
return props.dataController !== undefined ? RootNodeContext(props) : DescendantNodeContext(props);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=NodeContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeContext.js","sourceRoot":"","sources":["../../../src/blocks/layout/NodeContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PanelRoot = PanelRoot;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const block_editor_1 = require("@wordpress/block-editor");
|
|
6
|
+
const components_1 = require("@wordpress/components");
|
|
7
|
+
const icons_1 = require("@wordpress/icons");
|
|
8
|
+
const conditions_1 = require("../conditions");
|
|
9
|
+
const LaidOutPropertyRow_1 = require("./LaidOutPropertyRow");
|
|
10
|
+
const simple_native_property_internal_shared_1 = require("../simple-native-property-internal-shared");
|
|
11
|
+
const SNPTreeContext_1 = require("../SNPTreeContext");
|
|
12
|
+
function PanelRoot({ panel }) {
|
|
13
|
+
const { condition, properties, raw, ...panelBodyProps } = panel;
|
|
14
|
+
const dataController = (0, SNPTreeContext_1.useSNPTreeContext)("construct a PanelRoot");
|
|
15
|
+
if (!dataController.hasRenderedNode(properties)
|
|
16
|
+
|| !(0, conditions_1.testCondition)(condition, dataController.makePropertyValueResolver([]))) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const bonusProps = dataController.hasValidationErrors(properties)
|
|
20
|
+
? { icon: icons_1.cautionFilled, buttonProps: { className: "has-validation-error components-panel__body-toggle" } } //We have to include the default button class for some insane reason
|
|
21
|
+
: {};
|
|
22
|
+
const panelGroup = panel.group === 'layered-styles' ? 'styles' : panel.group;
|
|
23
|
+
const children = properties.map(property => {
|
|
24
|
+
const key = Array.isArray(property) ? property.map(prop => prop.name).join('-') : property.name;
|
|
25
|
+
return (0, jsx_runtime_1.jsx)(LaidOutPropertyRow_1.LaidOutPropertyRow, { property: property, dataController: dataController }, key);
|
|
26
|
+
});
|
|
27
|
+
return (0, jsx_runtime_1.jsx)(block_editor_1.InspectorControls, { group: panelGroup, children: (raw ?? !(0, simple_native_property_internal_shared_1.isRootLevelPanelGroup)(panelGroup)) ? children : (0, jsx_runtime_1.jsx)(components_1.PanelBody, { ...panelBodyProps, ...bonusProps, children: children }) });
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=PanelRoot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PanelRoot.js","sourceRoot":"","sources":["../../../src/blocks/layout/PanelRoot.tsx"],"names":[],"mappings":";;AAYA,8BAoBC;;AAhCD,0DAA0D;AAC1D,sDAAgD;AAChD,4CAA+C;AAE/C,8CAA4C;AAC5C,6DAAwD;AACxD,sGAA2G;AAC3G,sDAAoD;AAKpD,SAAgB,SAAS,CAAC,EAAC,KAAK,EAAiB;IAChD,MAAM,EAAC,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,cAAc,EAAC,GAAG,KAAK,CAAC;IAE9D,MAAM,cAAc,GAAG,IAAA,kCAAiB,EAAC,uBAAuB,CAAC,CAAC;IAElE,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC;WAC3C,CAAC,IAAA,0BAAa,EAAC,SAAS,EAAE,cAAc,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC7E,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,UAAU,GAAwD,cAAc,CAAC,mBAAmB,CAAC,UAAU,CAAC;QACrH,CAAC,CAAC,EAAC,IAAI,EAAE,qBAAa,EAAE,WAAW,EAAE,EAAC,SAAS,EAAE,oDAAoD,EAAC,EAAC,CAAC,oEAAoE;QAC5K,CAAC,CAAC,EAAE,CAAC;IAEN,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,KAAK,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IAC7E,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChG,OAAO,uBAAC,uCAAkB,IAAW,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,IAAvD,GAAG,CAAuD,CAAC;IAC5F,CAAC,CAAC,CAAC;IACH,OAAO,uBAAC,gCAAiB,IAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,IAAA,8DAAqB,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,uBAAC,sBAAS,OAAK,cAAc,KAAM,UAAU,EAAE,QAAQ,EAAE,QAAQ,GAAI,GAAI,CAAC;AAC3L,CAAC"}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TabsRoot = TabsRoot;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const block_editor_1 = require("@wordpress/block-editor");
|
|
6
|
+
const components_1 = require("@wordpress/components");
|
|
7
|
+
const conditions_1 = require("../conditions");
|
|
8
|
+
const LaidOutPropertyRow_1 = require("./LaidOutPropertyRow");
|
|
9
|
+
const SNPTreeContext_1 = require("../SNPTreeContext");
|
|
10
|
+
function TabsRoot({ tabs, tabGroupName }) {
|
|
8
11
|
//TODO: It should be possible to use immer to make this entire thing memoized
|
|
9
|
-
const dataController = useSNPTreeContext("construct a TabsRoot component");
|
|
12
|
+
const dataController = (0, SNPTreeContext_1.useSNPTreeContext)("construct a TabsRoot component");
|
|
10
13
|
const instantiatedTabs = instantiateTabsForRenderCycle(tabs, dataController);
|
|
11
14
|
if (instantiatedTabs.every(tab => tab.disabled)) {
|
|
12
15
|
return null;
|
|
13
16
|
}
|
|
14
|
-
return
|
|
17
|
+
return (0, jsx_runtime_1.jsx)(block_editor_1.InspectorControls, { group: tabGroupName, children: (0, jsx_runtime_1.jsx)(components_1.TabPanel, { tabs: instantiatedTabs, children: tab => tab.panels
|
|
15
18
|
.filter(([rendered]) => rendered)
|
|
16
|
-
.map(([_, panel, key]) =>
|
|
19
|
+
.map(([_, panel, key]) => (0, jsx_runtime_1.jsx)(RenderedTabPanel, { dataController: dataController, panel: panel }, key)) }) });
|
|
17
20
|
}
|
|
18
21
|
//TODO: Figure out how to memoize this (will probably need some sort of panel/tab-based cache in the dataController)
|
|
19
22
|
function instantiateTabsForRenderCycle(hydratedTabs, dataController) {
|
|
@@ -24,7 +27,7 @@ function instantiateTabsForRenderCycle(hydratedTabs, dataController) {
|
|
|
24
27
|
let index = 0;
|
|
25
28
|
let hasValidationErrors = false;
|
|
26
29
|
for (const panel of hydratedTab.items) {
|
|
27
|
-
const rendered = dataController.hasRenderedNode(panel.properties) && (panel.condition === undefined || testCondition(panel.condition, propertyValueResolver));
|
|
30
|
+
const rendered = dataController.hasRenderedNode(panel.properties) && (panel.condition === undefined || (0, conditions_1.testCondition)(panel.condition, propertyValueResolver));
|
|
28
31
|
if (rendered) {
|
|
29
32
|
if (!hasValidationErrors && dataController.hasValidationErrors(panel.properties)) {
|
|
30
33
|
hasValidationErrors = true;
|
|
@@ -39,7 +42,7 @@ function instantiateTabsForRenderCycle(hydratedTabs, dataController) {
|
|
|
39
42
|
function RenderedTabPanel({ dataController, panel }) {
|
|
40
43
|
// We have already tested the rendered-ness of the Panel earlier, so there's no need to redo it
|
|
41
44
|
const { condition, properties, raw, ...panelBodyProps } = panel;
|
|
42
|
-
const children = properties.map(property =>
|
|
43
|
-
return raw ? children :
|
|
45
|
+
const children = properties.map(property => (0, jsx_runtime_1.jsx)(LaidOutPropertyRow_1.LaidOutPropertyRow, { property: property, dataController: dataController }));
|
|
46
|
+
return raw ? children : (0, jsx_runtime_1.jsx)(components_1.PanelBody, { ...panelBodyProps, opened: panelBodyProps.title ? undefined : true, children: children });
|
|
44
47
|
}
|
|
45
48
|
//# sourceMappingURL=TabsRoot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabsRoot.js","sourceRoot":"","sources":["../../../src/blocks/layout/TabsRoot.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ToolsPanelContext = void 0;
|
|
4
|
+
exports.makeToolsPanelContextValue = makeToolsPanelContextValue;
|
|
5
|
+
exports.useToolsPanelContext = useToolsPanelContext;
|
|
6
|
+
const element_1 = require("@wordpress/element");
|
|
7
|
+
exports.ToolsPanelContext = (0, element_1.createContext)(undefined);
|
|
8
|
+
let nextPanelId = 0;
|
|
9
|
+
function makeToolsPanelContextValue(actualDefaultValues) {
|
|
10
|
+
const panelId = (0, element_1.useMemo)(() => (nextPanelId++).toString(), []);
|
|
11
|
+
return (0, element_1.useMemo)(() => ({
|
|
12
|
+
panelId,
|
|
13
|
+
getDefaultValue: (name) => actualDefaultValues[name]
|
|
14
|
+
}), [panelId, actualDefaultValues]);
|
|
15
|
+
}
|
|
16
|
+
function useToolsPanelContext(action) {
|
|
17
|
+
const currentContext = (0, element_1.useContext)(exports.ToolsPanelContext);
|
|
18
|
+
if (currentContext === undefined) {
|
|
19
|
+
throw new Error(`Cannot ${action} outside of an existing ToolsPanelContext`);
|
|
20
|
+
}
|
|
21
|
+
return currentContext;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=ToolsPanelContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolsPanelContext.js","sourceRoot":"","sources":["../../../src/blocks/layout/ToolsPanelContext.tsx"],"names":[],"mappings":";;;AAOA,gEAMC;AAED,oDAMC;AArBD,gDAAsE;AAIzD,QAAA,iBAAiB,GAAG,IAAA,uBAAa,EAAmC,SAAS,CAAC,CAAC;AAE5F,IAAI,WAAW,GAAG,CAAC,CAAC;AACpB,SAAgB,0BAA0B,CAAC,mBAA+C;IACzF,MAAM,OAAO,GAAG,IAAA,iBAAO,EAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IAC9D,OAAO,IAAA,iBAAO,EAAC,GAAG,EAAE,CAAC,CAAC;QACrB,OAAO;QACP,eAAe,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;KAC5D,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,SAAgB,oBAAoB,CAAC,MAAc;IAClD,MAAM,cAAc,GAAG,IAAA,oBAAU,EAAC,yBAAiB,CAAC,CAAC;IACrD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,2CAA2C,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,cAAc,CAAC;AACvB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type Block, type BlockConfiguration, type BlockSaveProps } from "@wordpress/blocks";
|
|
2
2
|
import { InnerBlocks } from "@wordpress/block-editor";
|
|
3
3
|
import type { UseBlockProps } from "@wordpress/block-editor/components/use-block-props";
|
|
4
|
-
import
|
|
4
|
+
import type { ComponentType, ReactNode } from "react";
|
|
5
5
|
export type SimpleBlockTypeConfig<TAttributes extends Record<string, any>> = {
|
|
6
6
|
icon?: BlockConfiguration<TAttributes>['icon'] | undefined;
|
|
7
7
|
defaults?: Required<TAttributes>;
|