PluginProbe ʕ •ᴥ•ʔ
VK Blocks / trunk
VK Blocks vtrunk
1.122.0 1.121.0 1.120.0 1.119.2 1.119.1 1.119.0 1.118.7 1.82.0.0 1.82.0.1 1.83.0.0 1.83.0.1 1.84.0.0 1.84.0.1 1.85.0.2 1.85.0.3 1.85.1.0 1.85.1.1 1.86.0.0 1.86.0.1 1.86.1.0 1.87.0.0 1.87.0.1 1.88.0.1 1.88.0.2 1.89.0.0 1.9.2 1.90.0.0 1.90.0.1 1.90.1.1 1.91.0.0 1.91.1.1 1.92.0.0 1.92.0.1 1.92.1.0 1.92.1.1 1.93.0.0 trunk 1.93.0.1 0.1.1 1.93.1.0 0.10.3 1.93.1.1 0.11.0 1.94.0.0 0.12.6 1.94.0.1 0.15.1 1.94.1.0 0.16.2 1.94.2.1 0.17.6 1.94.2.2 0.2.2 1.95.0.3 0.22.4 1.95.0.4 0.26.7 1.96.2.0 0.3.2 1.96.2.1 0.31.0 1.97.0.1 0.35.5 1.97.0.2 0.37.5 1.99.0.0 0.38.8 1.99.0.1 0.39.4 0.4.7 0.41.0 0.42.0 0.44.13 0.45.2 0.46.1 0.47.0 0.48.0 0.49.8 0.5.2 0.50.3 0.51.0 0.52.2 0.53.2 0.54.0 0.55.0 0.56.2 0.56.3 0.57.6 0.58.10 0.59.0 0.6.0 0.60.1 0.61.2 0.7.1 0.8.2 1.0.16 1.10.0 1.100.0.0 1.100.0.1 1.102.0.0 1.102.0.1 1.103.0.0 1.104.0.0 1.104.0.1 1.105.1.0 1.105.1.1 1.106.0.0 1.106.0.1 1.107.0.0 1.107.0.1 1.107.0.2 1.108.0.0 1.108.0.1 1.109.0.0 1.109.0.1 1.11.4 1.110.0.0 1.110.0.1 1.111.0.0 1.111.0.1 1.111.0.2 1.112.0.0 1.112.0.1 1.113.0.0 1.113.0.1 1.114.0.0 1.114.0.1 1.114.2.0 1.114.2.1 1.115.0.0 1.115.0.1 1.115.1.0 1.115.1.1 1.115.2.0 1.115.2.1 1.116.0.0 1.116.0.1 1.116.1.0 1.116.1.1 1.116.2.0 1.117.0.0 1.117.0.1 1.117.1.0 1.118.2 1.118.5 1.12.0 1.13.2 1.14.1 1.15.1 1.16.11 1.17.0 1.18.6 1.19.0 1.19.1 1.2.3 1.20.7 1.21.0 1.22.4 1.23.0 1.24.5 1.25.1 1.26.2 1.27.7.2 1.28.0.1 1.29.2.0 1.3.9 1.30.0.1 1.31.0.1 1.32.0.2 1.33.2.1 1.36.1.5 1.37.0.0 1.39.2.1 1.4.6 1.40.0.1 1.40.1.0 1.40.1.1 1.41.0.0 1.41.0.1 1.41.2.2 1.41.2.3 1.43.0.0 1.43.0.1 1.43.0.2 1.44.0.0 1.44.0.1 1.45.0.0 1.45.0.1 1.46.0.0 1.46.0.1 1.47.0.0 1.47.0.1 1.47.1.0 1.48.0.0 1.48.0.1 1.48.0.2 1.48.1.0 1.48.1.1 1.5.0 1.50.0.0 1.50.0.1 1.51.0.0 1.51.0.1 1.52.0.0 1.52.0.1 1.53.0.0 1.53.0.1 1.54.0.0 1.54.0.1 1.55.0.0 1.55.0.1 1.56.0.0 1.56.0.1 1.57.0.0 1.57.0.2 1.57.0.3 1.57.0.4 1.57.0.5 1.57.1.0 1.57.1.1 1.57.1.2 1.58.0.0 1.58.0.1 1.59.0.0 1.59.0.1 1.6.0 1.60.0.0 1.60.0.1 1.63.0.0 1.63.0.1 1.64.0.0 1.64.0.1 1.64.1.0 1.64.1.2 1.67.0.0 1.67.0.1 1.68.0.0 1.68.0.1 1.69.0.0 1.69.0.1 1.69.1.1 1.69.1.2 1.7.1 1.70.0.0 1.70.0.1 1.71.0.0 1.71.0.1 1.72.0.0 1.72.1.0 1.72.1.1 1.73.0.0 1.73.0.1 1.74.0.0 1.74.0.1 1.75.0.0 1.75.1.0 1.75.1.1 1.76.0.0 1.76.0.1 1.76.1.0 1.76.1.1 1.76.2.0 1.76.2.1 1.77.0.0 1.77.0.1 1.78.0.0 1.78.0.1 1.79.0.0 1.79.0.1 1.79.0.2 1.79.0.3 1.79.1.0 1.79.1.1 1.8.2 1.80.1.0 1.80.1.1 1.80.1.2 1.81.0.1 1.81.0.2
vk-blocks / src / admin / index.js
vk-blocks / src / admin Last commit date
balloon 1 week ago block-manager 2 months ago block-style-manager 2 months ago custom-block-style 2 months ago custom-format 2 months ago import-export 2 months ago utils 2 months ago block-category-position.js 2 months ago breadcrumb.js 2 months ago custom-css.js 2 months ago index.js 2 months ago license.js 2 months ago load-separate.js 2 months ago margin.js 2 months ago new-faq.js 2 months ago save-button.js 2 months ago toc.js 2 months ago
index.js
105 lines
1 /**
2 * WordPress dependencies
3 */
4 import {
5 render,
6 createRoot,
7 useState,
8 createContext,
9 useEffect,
10 } from '@wordpress/element';
11 import { useSelect } from '@wordpress/data';
12 import 'regenerator-runtime/runtime';
13 /**
14 * Internal dependencies
15 */
16 import '@vkblocks/utils/store';
17 import '@vkblocks/utils/store/termColor';
18
19 import { STORE_NAME } from '@vkblocks/utils/store/constants';
20 import AdminLicense from '@vkblocks/admin/license';
21 import AdminBlockCategoryPosition from '@vkblocks/admin/block-category-position';
22 import AdminBalloon from '@vkblocks/admin/balloon';
23 import AdminMargin from '@vkblocks/admin/margin';
24 import AdminLoadSeparate from '@vkblocks/admin/load-separate';
25 import AdminNewFaq from '@vkblocks/admin/new-faq';
26 import AdminBreadcrumb from '@vkblocks/admin/breadcrumb';
27 import BlockManager from '@vkblocks/admin/block-manager';
28 import AdminCustomFormat from '@vkblocks/admin/custom-format';
29 import AdminCustomBlockStyle from '@vkblocks/admin/custom-block-style';
30 import AdminCustomCss from '@vkblocks/admin/custom-css';
31 import BlockStyleManager from '@vkblocks/admin/block-style-manager';
32 import AdminImportExport from '@vkblocks/admin/import-export';
33 import { SaveButton } from '@vkblocks/admin/save-button';
34 import AdminToc from '@vkblocks/admin/toc';
35 /*globals vkBlocksObject */
36
37 export const AdminContext = createContext();
38
39 export default function VKBlocksAdmin() {
40 const [vkBlocksOption, setVkBlocksOption] = useState();
41 const [reloadFlag, setReloadFlag] = useState(false);
42 const [isChanged, setIsChanged] = useState(false);
43
44 const storeOptions = useSelect((select) => {
45 const { getOptions } = select(STORE_NAME);
46 return getOptions().vkBlocksOption;
47 }, []);
48
49 useEffect(() => {
50 setVkBlocksOption(storeOptions);
51 }, [storeOptions]);
52
53 const optionChanged = (value) => {
54 setVkBlocksOption(value);
55 setIsChanged(true);
56 };
57
58 return (
59 <>
60 {/* AdminContext.Providerで各コンポーネントにvalueを渡す */}
61 <AdminContext.Provider
62 value={{
63 vkBlocksOption: vkBlocksOption ?? vkBlocksObject.options,
64 setVkBlocksOption: optionChanged,
65 reloadFlag,
66 setReloadFlag,
67 }}
68 >
69 {vkBlocksObject.isLicenseSetting && <AdminLicense />}
70 <AdminBlockCategoryPosition />
71 <AdminBalloon />
72 {vkBlocksObject.isPro && <AdminCustomFormat />}
73 {vkBlocksObject.isPro && <AdminCustomBlockStyle />}
74 <AdminMargin />
75 <AdminLoadSeparate />
76 {vkBlocksObject.isPro && <AdminNewFaq />}
77 {vkBlocksObject.isPro && <AdminBreadcrumb />}
78 {vkBlocksObject.isPro && <AdminToc />}
79 {vkBlocksObject.isPro && <AdminCustomCss />}
80 <BlockManager />
81 <BlockStyleManager />
82 <SaveButton
83 classOption={'sticky'}
84 isChanged={isChanged}
85 setIsChanged={setIsChanged}
86 />
87 <AdminImportExport
88 isChanged={isChanged}
89 setIsChanged={setIsChanged}
90 />
91 </AdminContext.Provider>
92 </>
93 );
94 }
95
96 // NOTE: ReactDOM.renderが非推奨になったのでフォールバック WP6.1以下をサポートしなくなったら削除すること #1574
97 const existsCreateRoot = typeof createRoot === 'function';
98 if (existsCreateRoot) {
99 const container = document.getElementById('vk-blocks-admin');
100 const root = createRoot(container);
101 root.render(<VKBlocksAdmin />);
102 } else {
103 render(<VKBlocksAdmin />, document.getElementById('vk-blocks-admin'));
104 }
105