itmar-block-packages 2.1.2 → 3.0.2
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 +18 -4
- package/build/cjs/AnimationBlock.js +61 -92
- package/build/cjs/AnimationBlock.js.map +1 -1
- package/build/cjs/BlockEditWrapper.js +3 -10
- package/build/cjs/BlockEditWrapper.js.map +1 -1
- package/build/cjs/BlockPlace.js +277 -482
- package/build/cjs/BlockPlace.js.map +1 -1
- package/build/cjs/BrockInserter.js +195 -191
- package/build/cjs/BrockInserter.js.map +1 -1
- package/build/cjs/DateElm.js +254 -281
- package/build/cjs/DateElm.js.map +1 -1
- package/build/cjs/DraggableBox.js +99 -129
- package/build/cjs/DraggableBox.js.map +1 -1
- package/build/cjs/GridControls.js +292 -392
- package/build/cjs/GridControls.js.map +1 -1
- package/build/cjs/IconSelectControl.js +65 -156
- package/build/cjs/IconSelectControl.js.map +1 -1
- package/build/cjs/JapaneseHolidays.js +67 -76
- package/build/cjs/JapaneseHolidays.js.map +1 -1
- package/build/cjs/MasonryControl.js +95 -100
- package/build/cjs/MasonryControl.js.map +1 -1
- package/build/cjs/PseudoElm.js +37 -50
- package/build/cjs/PseudoElm.js.map +1 -1
- package/build/cjs/ShadowStyle.js +216 -430
- package/build/cjs/ShadowStyle.js.map +1 -1
- package/build/cjs/SwiperControl.js +240 -241
- package/build/cjs/SwiperControl.js.map +1 -1
- package/build/cjs/ToggleElement.js +17 -9
- package/build/cjs/ToggleElement.js.map +1 -1
- package/build/cjs/TypographyControls.js +73 -139
- package/build/cjs/TypographyControls.js.map +1 -1
- package/build/cjs/UpdateAllPostsBlockAttributes.js +102 -119
- package/build/cjs/UpdateAllPostsBlockAttributes.js.map +1 -1
- package/build/cjs/ZipAddress.js +27 -23
- package/build/cjs/ZipAddress.js.map +1 -1
- package/build/cjs/blockStore.js +42 -47
- package/build/cjs/blockStore.js.map +1 -1
- package/build/cjs/cssPropertes.js +165 -117
- package/build/cjs/cssPropertes.js.map +1 -1
- package/build/cjs/customHooks.js +277 -0
- package/build/cjs/customHooks.js.map +1 -0
- package/build/cjs/formatCreate.js +115 -145
- package/build/cjs/formatCreate.js.map +1 -1
- package/build/cjs/hslToRgb.js +112 -116
- package/build/cjs/hslToRgb.js.map +1 -1
- package/build/cjs/index.js +15 -11
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/mediaUpload.js +95 -158
- package/build/cjs/mediaUpload.js.map +1 -1
- package/build/cjs/node_modules/swiper/shared/ssr-window.esm.js +144 -0
- package/build/cjs/node_modules/swiper/shared/ssr-window.esm.js.map +1 -0
- package/build/cjs/node_modules/swiper/shared/swiper-core.js +3925 -0
- package/build/cjs/node_modules/swiper/shared/swiper-core.js.map +1 -0
- package/build/cjs/node_modules/swiper/shared/utils.js +294 -0
- package/build/cjs/node_modules/swiper/shared/utils.js.map +1 -0
- package/build/cjs/pickupStore.js +56 -54
- package/build/cjs/pickupStore.js.map +1 -1
- package/build/cjs/shopfiApi.js +127 -138
- package/build/cjs/shopfiApi.js.map +1 -1
- package/build/cjs/types/AnimationBlock.d.ts +22 -0
- package/build/cjs/types/BlockEditWrapper.d.ts +7 -0
- package/build/cjs/types/BlockPlace.d.ts +49 -0
- package/build/cjs/types/BrockInserter.d.ts +6 -0
- package/build/cjs/types/DateElm.d.ts +69 -0
- package/build/cjs/types/DraggableBox.d.ts +19 -0
- package/build/cjs/types/GridControls.d.ts +27 -0
- package/build/cjs/types/IconSelectControl.d.ts +17 -0
- package/build/cjs/types/JapaneseHolidays.d.ts +6 -0
- package/build/cjs/types/MasonryControl.d.ts +35 -0
- package/build/cjs/types/PseudoElm.d.ts +11 -0
- package/build/cjs/types/ShadowStyle.d.ts +33 -0
- package/build/cjs/types/SwiperControl.d.ts +12 -0
- package/build/cjs/types/ToggleElement.d.ts +13 -0
- package/build/cjs/types/TypographyControls.d.ts +17 -0
- package/build/cjs/types/UpdateAllPostsBlockAttributes.d.ts +10 -0
- package/build/cjs/types/ZipAddress.d.ts +18 -0
- package/build/cjs/types/blockStore.d.ts +15 -0
- package/build/cjs/types/cssPropertes.d.ts +53 -0
- package/build/cjs/types/customHooks.d.ts +11 -0
- package/build/cjs/types/formatCreate.d.ts +18 -0
- package/build/cjs/types/hslToRgb.d.ts +23 -0
- package/build/cjs/types/index.d.ts +31 -0
- package/build/cjs/types/mediaUpload.d.ts +29 -0
- package/build/cjs/types/pickupStore.d.ts +39 -0
- package/build/cjs/types/shopfiApi.d.ts +18 -0
- package/build/cjs/types/validationCheck.d.ts +5 -0
- package/build/cjs/types/wordpressApi.d.ts +99 -0
- package/build/cjs/validationCheck.js +15 -9
- package/build/cjs/validationCheck.js.map +1 -1
- package/build/cjs/wordpressApi.js +364 -576
- package/build/cjs/wordpressApi.js.map +1 -1
- package/build/esm/AnimationBlock.d.ts +22 -0
- package/build/esm/AnimationBlock.js +61 -92
- package/build/esm/AnimationBlock.js.map +1 -1
- package/build/esm/BlockEditWrapper.d.ts +7 -0
- package/build/esm/BlockEditWrapper.js +4 -11
- package/build/esm/BlockEditWrapper.js.map +1 -1
- package/build/esm/BlockPlace.d.ts +49 -0
- package/build/esm/BlockPlace.js +279 -484
- package/build/esm/BlockPlace.js.map +1 -1
- package/build/esm/BrockInserter.d.ts +6 -0
- package/build/esm/BrockInserter.js +195 -191
- package/build/esm/BrockInserter.js.map +1 -1
- package/build/esm/DateElm.d.ts +69 -0
- package/build/esm/DateElm.js +254 -281
- package/build/esm/DateElm.js.map +1 -1
- package/build/esm/DraggableBox.d.ts +19 -0
- package/build/esm/DraggableBox.js +99 -129
- package/build/esm/DraggableBox.js.map +1 -1
- package/build/esm/GridControls.d.ts +27 -0
- package/build/esm/GridControls.js +294 -394
- package/build/esm/GridControls.js.map +1 -1
- package/build/esm/IconSelectControl.d.ts +17 -0
- package/build/esm/IconSelectControl.js +65 -156
- package/build/esm/IconSelectControl.js.map +1 -1
- package/build/esm/JapaneseHolidays.d.ts +6 -0
- package/build/esm/JapaneseHolidays.js +67 -76
- package/build/esm/JapaneseHolidays.js.map +1 -1
- package/build/esm/MasonryControl.d.ts +35 -0
- package/build/esm/MasonryControl.js +95 -100
- package/build/esm/MasonryControl.js.map +1 -1
- package/build/esm/PseudoElm.d.ts +11 -0
- package/build/esm/PseudoElm.js +37 -50
- package/build/esm/PseudoElm.js.map +1 -1
- package/build/esm/ShadowStyle.d.ts +33 -0
- package/build/esm/ShadowStyle.js +217 -431
- package/build/esm/ShadowStyle.js.map +1 -1
- package/build/esm/SwiperControl.d.ts +12 -0
- package/build/esm/SwiperControl.js +240 -241
- package/build/esm/SwiperControl.js.map +1 -1
- package/build/esm/ToggleElement.d.ts +13 -0
- package/build/esm/ToggleElement.js +17 -9
- package/build/esm/ToggleElement.js.map +1 -1
- package/build/esm/TypographyControls.d.ts +17 -0
- package/build/esm/TypographyControls.js +73 -139
- package/build/esm/TypographyControls.js.map +1 -1
- package/build/esm/UpdateAllPostsBlockAttributes.d.ts +10 -0
- package/build/esm/UpdateAllPostsBlockAttributes.js +103 -120
- package/build/esm/UpdateAllPostsBlockAttributes.js.map +1 -1
- package/build/esm/ZipAddress.d.ts +18 -0
- package/build/esm/ZipAddress.js +27 -23
- package/build/esm/ZipAddress.js.map +1 -1
- package/build/esm/blockStore.d.ts +15 -0
- package/build/esm/blockStore.js +42 -47
- package/build/esm/blockStore.js.map +1 -1
- package/build/esm/cssPropertes.d.ts +53 -0
- package/build/esm/cssPropertes.js +165 -117
- package/build/esm/cssPropertes.js.map +1 -1
- package/build/esm/customHooks.d.ts +11 -0
- package/build/esm/customHooks.js +267 -0
- package/build/esm/customHooks.js.map +1 -0
- package/build/esm/formatCreate.d.ts +18 -0
- package/build/esm/formatCreate.js +115 -145
- package/build/esm/formatCreate.js.map +1 -1
- package/build/esm/hslToRgb.d.ts +23 -0
- package/build/esm/hslToRgb.js +112 -116
- package/build/esm/hslToRgb.js.map +1 -1
- package/build/esm/index.d.ts +27 -0
- package/build/esm/index.js +8 -1
- package/build/esm/index.js.map +1 -1
- package/build/esm/mediaUpload.d.ts +29 -0
- package/build/esm/mediaUpload.js +95 -158
- package/build/esm/mediaUpload.js.map +1 -1
- package/build/esm/node_modules/swiper/shared/ssr-window.esm.js +141 -0
- package/build/esm/node_modules/swiper/shared/ssr-window.esm.js.map +1 -0
- package/build/esm/node_modules/swiper/shared/swiper-core.js +3922 -0
- package/build/esm/node_modules/swiper/shared/swiper-core.js.map +1 -0
- package/build/esm/node_modules/swiper/shared/utils.js +274 -0
- package/build/esm/node_modules/swiper/shared/utils.js.map +1 -0
- package/build/esm/pickupStore.d.ts +39 -0
- package/build/esm/pickupStore.js +56 -54
- package/build/esm/pickupStore.js.map +1 -1
- package/build/esm/shopfiApi.d.ts +18 -0
- package/build/esm/shopfiApi.js +127 -138
- package/build/esm/shopfiApi.js.map +1 -1
- package/build/esm/types/AnimationBlock.d.ts +22 -0
- package/build/esm/types/BlockEditWrapper.d.ts +7 -0
- package/build/esm/types/BlockPlace.d.ts +49 -0
- package/build/esm/types/BrockInserter.d.ts +6 -0
- package/build/esm/types/DateElm.d.ts +69 -0
- package/build/esm/types/DraggableBox.d.ts +19 -0
- package/build/esm/types/GridControls.d.ts +27 -0
- package/build/esm/types/IconSelectControl.d.ts +17 -0
- package/build/esm/types/JapaneseHolidays.d.ts +6 -0
- package/build/esm/types/MasonryControl.d.ts +35 -0
- package/build/esm/types/PseudoElm.d.ts +11 -0
- package/build/esm/types/ShadowStyle.d.ts +33 -0
- package/build/esm/types/SwiperControl.d.ts +12 -0
- package/build/esm/types/ToggleElement.d.ts +13 -0
- package/build/esm/types/TypographyControls.d.ts +17 -0
- package/build/esm/types/UpdateAllPostsBlockAttributes.d.ts +10 -0
- package/build/esm/types/ZipAddress.d.ts +18 -0
- package/build/esm/types/blockStore.d.ts +15 -0
- package/build/esm/types/cssPropertes.d.ts +53 -0
- package/build/esm/types/customHooks.d.ts +11 -0
- package/build/esm/types/formatCreate.d.ts +18 -0
- package/build/esm/types/hslToRgb.d.ts +23 -0
- package/build/esm/types/index.d.ts +31 -0
- package/build/esm/types/mediaUpload.d.ts +29 -0
- package/build/esm/types/pickupStore.d.ts +39 -0
- package/build/esm/types/shopfiApi.d.ts +18 -0
- package/build/esm/types/validationCheck.d.ts +5 -0
- package/build/esm/types/wordpressApi.d.ts +99 -0
- package/build/esm/validationCheck.d.ts +5 -0
- package/build/esm/validationCheck.js +15 -9
- package/build/esm/validationCheck.js.map +1 -1
- package/build/esm/wordpressApi.d.ts +99 -0
- package/build/esm/wordpressApi.js +365 -577
- package/build/esm/wordpressApi.js.map +1 -1
- package/package.json +29 -7
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -117
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
- package/build/cjs/customFooks.js +0 -300
- package/build/cjs/customFooks.js.map +0 -1
- package/build/esm/_virtual/_rollupPluginBabelHelpers.js +0 -107
- package/build/esm/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
- package/build/esm/customFooks.js +0 -290
- package/build/esm/customFooks.js.map +0 -1
package/build/cjs/shopfiApi.js
CHANGED
|
@@ -1,56 +1,53 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var i18n = require('@wordpress/i18n');
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
nonce
|
|
12
|
-
}
|
|
13
|
-
return nonce;
|
|
14
|
-
}
|
|
15
|
-
function generateCodeVerifier() {
|
|
16
|
-
var length = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 128;
|
|
17
|
-
var charset = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";
|
|
18
|
-
var result = "";
|
|
19
|
-
for (var i = 0; i < length; i++) {
|
|
20
|
-
result += charset.charAt(Math.floor(Math.random() * charset.length));
|
|
21
|
-
}
|
|
22
|
-
return result;
|
|
5
|
+
function generateNonce(length = 32) {
|
|
6
|
+
const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
7
|
+
let nonce = "";
|
|
8
|
+
for (let i = 0; i < length; i++) {
|
|
9
|
+
nonce += characters.charAt(Math.floor(Math.random() * characters.length));
|
|
10
|
+
}
|
|
11
|
+
return nonce;
|
|
23
12
|
}
|
|
24
|
-
function
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
var digest = yield crypto.subtle.digest("SHA-256", data);
|
|
32
|
-
return btoa(String.fromCharCode(...new Uint8Array(digest))).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
|
|
33
|
-
});
|
|
34
|
-
return _generateCodeChallenge.apply(this, arguments);
|
|
13
|
+
function generateCodeVerifier(length = 128) {
|
|
14
|
+
const charset = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";
|
|
15
|
+
let result = "";
|
|
16
|
+
for (let i = 0; i < length; i++) {
|
|
17
|
+
result += charset.charAt(Math.floor(Math.random() * charset.length));
|
|
18
|
+
}
|
|
19
|
+
return result;
|
|
35
20
|
}
|
|
36
|
-
function
|
|
37
|
-
|
|
21
|
+
async function generateCodeChallenge(codeVerifier) {
|
|
22
|
+
const encoder = new TextEncoder();
|
|
23
|
+
const data = encoder.encode(codeVerifier);
|
|
24
|
+
const digest = await crypto.subtle.digest("SHA-256", data);
|
|
25
|
+
// Uint8Array への変換と Base64 エンコード
|
|
26
|
+
const hashArray = new Uint8Array(digest);
|
|
27
|
+
// バイナリデータを文字列に変換
|
|
28
|
+
// ※スプレッド構文 (...) は大規模なデータでスタックオーバーフローの可能性があるため
|
|
29
|
+
// 小規模な PKCE 用途では問題ありませんが、型定義を明確にします。
|
|
30
|
+
const binaryString = String.fromCharCode(...Array.from(hashArray));
|
|
31
|
+
// Base64 を Base64URL 形式(Shopify / OAuth 2.0 仕様)に変換
|
|
32
|
+
return btoa(binaryString)
|
|
33
|
+
.replace(/\+/g, "-")
|
|
34
|
+
.replace(/\//g, "_")
|
|
35
|
+
.replace(/=+$/, "");
|
|
38
36
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
_redirectCustomerAuthorize = _rollupPluginBabelHelpers.asyncToGenerator(function* (shopId, clientId, userMail, callbackUri, redirectUri) {
|
|
37
|
+
// ✅ Shopifyへの認証リダイレクト
|
|
38
|
+
async function redirectCustomerAuthorize(shopId, clientId, userMail, callbackUri, // Shopify側の管理画面で登録したリダイレクト先
|
|
39
|
+
redirectUri) {
|
|
43
40
|
//呼び出し元の戻り先
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
41
|
+
const statePayload = {
|
|
42
|
+
ts: Date.now(),
|
|
43
|
+
random: Math.random().toString(36).substring(2),
|
|
44
|
+
return_url: redirectUri,
|
|
48
45
|
};
|
|
49
46
|
//stateで渡しておく
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
47
|
+
const state = btoa(JSON.stringify(statePayload));
|
|
48
|
+
const nonce = generateNonce();
|
|
49
|
+
const codeVerifier = generateCodeVerifier();
|
|
50
|
+
const codeChallenge = await generateCodeChallenge(codeVerifier);
|
|
54
51
|
localStorage.setItem("shopify_code_verifier", codeVerifier);
|
|
55
52
|
localStorage.setItem("shopify_state", state);
|
|
56
53
|
localStorage.setItem("shopify_nonce", nonce);
|
|
@@ -58,8 +55,7 @@ function _redirectCustomerAuthorize() {
|
|
|
58
55
|
localStorage.setItem("shopify_user_mail", userMail);
|
|
59
56
|
localStorage.setItem("shopify_shop_id", shopId);
|
|
60
57
|
localStorage.setItem("shopify_redirect_uri", callbackUri); //ログアウトの処理で使用する
|
|
61
|
-
|
|
62
|
-
var url = new URL("https://shopify.com/authentication/".concat(shopId, "/oauth/authorize"));
|
|
58
|
+
const url = new URL(`https://shopify.com/authentication/${shopId}/oauth/authorize`);
|
|
63
59
|
url.searchParams.append("scope", "openid email customer-account-api:full");
|
|
64
60
|
url.searchParams.append("client_id", clientId);
|
|
65
61
|
url.searchParams.append("response_type", "code");
|
|
@@ -69,114 +65,107 @@ function _redirectCustomerAuthorize() {
|
|
|
69
65
|
url.searchParams.append("code_challenge", codeChallenge);
|
|
70
66
|
url.searchParams.append("code_challenge_method", "S256");
|
|
71
67
|
window.location.href = url.toString();
|
|
72
|
-
});
|
|
73
|
-
return _redirectCustomerAuthorize.apply(this, arguments);
|
|
74
68
|
}
|
|
75
|
-
function checkCustomerLoginState() {
|
|
76
|
-
return _checkCustomerLoginState.apply(this, arguments);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
69
|
/**
|
|
80
|
-
*
|
|
81
|
-
* @param {object} data - 送信するデータ。nonce は data._wpnonce か data.nonce に入れておけばOK
|
|
82
|
-
* @param {'auto'|'rest'|'ajax'} mode - 既定は 'auto'
|
|
70
|
+
* Shopifyの顧客トークンを検証し、ログイン状態を確認する
|
|
83
71
|
*/
|
|
84
|
-
function
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
token
|
|
93
|
-
})
|
|
72
|
+
async function checkCustomerLoginState() {
|
|
73
|
+
const token = localStorage.getItem("shopify_customer_token");
|
|
74
|
+
if (!token)
|
|
75
|
+
return false;
|
|
76
|
+
const checkUrl = "/wp-json/itmar-ec-relate/v1/shopify-login-check";
|
|
77
|
+
const postData = {
|
|
78
|
+
nonce: itmar_option.nonce,
|
|
79
|
+
token: JSON.stringify({ token }),
|
|
94
80
|
};
|
|
95
|
-
sendRegistrationAjax
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
81
|
+
// sendRegistrationAjax が内部で jQuery.ajax を返している(Promise互換)と想定
|
|
82
|
+
try {
|
|
83
|
+
const response = await sendRegistrationRequest(checkUrl, postData, "rest");
|
|
84
|
+
// 成功時の処理
|
|
85
|
+
console.log("Login check success:", response);
|
|
86
|
+
// ここでサーバーからのレスポンス内容(成功/失敗)に応じて return するのが理想です
|
|
87
|
+
return response.success === true;
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
// 失敗時の処理
|
|
91
|
+
const errorMessage = error.statusText || error || "Unknown Error";
|
|
92
|
+
alert(i18n.__("Server Error: ", "itmar-ec-relate") + errorMessage);
|
|
93
|
+
console.error("Login check failed:", error);
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
106
96
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
97
|
+
/**
|
|
98
|
+
* 統合された WordPress 通信関数
|
|
99
|
+
*/
|
|
100
|
+
async function sendRegistrationRequest(urlOrPath, data = {}, mode = "auto") {
|
|
101
|
+
// 1. REST かどうかを判定
|
|
102
|
+
const isRestUrlLike = (u) => u.startsWith("/wp-json") ||
|
|
103
|
+
(!u.startsWith("/wp-admin") && !u.includes("admin-ajax.php"));
|
|
104
|
+
let isRest;
|
|
115
105
|
if (mode === "auto") {
|
|
116
|
-
|
|
117
|
-
} else {
|
|
118
|
-
isRest = mode === "rest";
|
|
106
|
+
isRest = isRestUrlLike(urlOrPath);
|
|
119
107
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
108
|
+
else {
|
|
109
|
+
isRest = mode === "rest";
|
|
110
|
+
}
|
|
111
|
+
// 2. パスの補完 (/wp-json/ を省略した場合の対応)
|
|
112
|
+
let url = urlOrPath;
|
|
113
|
+
if (isRest && !url.startsWith("http") && !url.startsWith("/wp-json")) {
|
|
114
|
+
const root = window.wpApiSettings?.root || "/wp-json/";
|
|
125
115
|
url = root.replace(/\/+$/, "/") + url.replace(/^\/+/, "");
|
|
126
|
-
}
|
|
127
116
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
117
|
+
// 3. ノンス (Security Token) の抽出
|
|
118
|
+
const nonce = data._wpnonce || data.nonce || window.wpApiSettings?.nonce;
|
|
119
|
+
// 4. 通信オプションの構築
|
|
120
|
+
const fetchOptions = {
|
|
121
|
+
method: "POST",
|
|
122
|
+
credentials: "same-origin", // 同一オリジン Cookie
|
|
123
|
+
headers: {},
|
|
133
124
|
};
|
|
134
|
-
|
|
135
|
-
// ノンス抽出(_wpnonce を優先)
|
|
136
|
-
var nonce = data._wpnonce || data.nonce || window.wpApiSettings && window.wpApiSettings.nonce;
|
|
137
125
|
if (isRest) {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
rest = _rollupPluginBabelHelpers.objectWithoutProperties(data, _excluded);
|
|
147
|
-
fetchOptions.body = JSON.stringify(rest);
|
|
148
|
-
} else {
|
|
149
|
-
// admin-ajax は URLSearchParams で送る
|
|
150
|
-
var form = new URLSearchParams();
|
|
151
|
-
Object.entries(data).forEach(_ref => {
|
|
152
|
-
var [k, v] = _ref;
|
|
153
|
-
if (v !== undefined && v !== null) form.append(k, String(v));
|
|
154
|
-
});
|
|
155
|
-
// ノンスは _wpnonce に統一
|
|
156
|
-
if (nonce && !form.has("_wpnonce")) form.append("_wpnonce", nonce);
|
|
157
|
-
fetchOptions.body = form;
|
|
126
|
+
// --- REST API モード: JSON で送る ---
|
|
127
|
+
fetchOptions.headers["Content-Type"] =
|
|
128
|
+
"application/json";
|
|
129
|
+
if (nonce)
|
|
130
|
+
fetchOptions.headers["X-WP-Nonce"] = nonce;
|
|
131
|
+
// Body から nonce 関連を分離して純粋なデータのみにする
|
|
132
|
+
const { _wpnonce, nonce: _legacyNonce, ...cleanData } = data;
|
|
133
|
+
fetchOptions.body = JSON.stringify(cleanData);
|
|
158
134
|
}
|
|
159
|
-
|
|
160
|
-
|
|
135
|
+
else {
|
|
136
|
+
// admin-ajax は URLSearchParams で送る
|
|
137
|
+
const form = new URLSearchParams();
|
|
138
|
+
Object.entries(data).forEach(([k, v]) => {
|
|
139
|
+
if (v !== undefined && v !== null)
|
|
140
|
+
form.append(k, String(v));
|
|
141
|
+
});
|
|
142
|
+
// ノンスは _wpnonce に統一
|
|
143
|
+
if (nonce && !form.has("_wpnonce"))
|
|
144
|
+
form.append("_wpnonce", nonce);
|
|
145
|
+
fetchOptions.body = form;
|
|
146
|
+
}
|
|
147
|
+
// 5. 実行
|
|
148
|
+
const res = await fetch(url, fetchOptions);
|
|
161
149
|
// WP REST はメソッド不一致・ルートなし等でも JSON 返さないことがあるので分岐
|
|
162
|
-
|
|
163
|
-
|
|
150
|
+
const contentType = res.headers.get("content-type") || "";
|
|
151
|
+
const tryJson = contentType.includes("application/json");
|
|
164
152
|
if (!res.ok) {
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
153
|
+
let msg = `HTTP ${res.status}`;
|
|
154
|
+
if (tryJson) {
|
|
155
|
+
try {
|
|
156
|
+
const j = await res.json();
|
|
157
|
+
msg += j.message ? `: ${j.message}` : "";
|
|
158
|
+
}
|
|
159
|
+
catch { }
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
const t = await res.text();
|
|
163
|
+
if (t)
|
|
164
|
+
msg += `: ${t.slice(0, 200)}`;
|
|
165
|
+
}
|
|
166
|
+
throw new Error(msg);
|
|
176
167
|
}
|
|
177
168
|
return tryJson ? res.json() : res.text();
|
|
178
|
-
});
|
|
179
|
-
return _sendRegistrationRequest.apply(this, arguments);
|
|
180
169
|
}
|
|
181
170
|
|
|
182
171
|
exports.checkCustomerLoginState = checkCustomerLoginState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shopfiApi.js","sources":["../../src/shopfiApi.js"],"sourcesContent":["function generateState() {\n const timestamp = Date.now().toString();\n const randomString = Math.random().toString(36).substring(2);\n return timestamp + randomString;\n}\n\nfunction generateNonce(length = 32) {\n const characters =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";\n let nonce = \"\";\n for (let i = 0; i < length; i++) {\n nonce += characters.charAt(Math.floor(Math.random() * characters.length));\n }\n return nonce;\n}\n\nfunction generateCodeVerifier(length = 128) {\n const charset =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~\";\n let result = \"\";\n for (let i = 0; i < length; i++) {\n result += charset.charAt(Math.floor(Math.random() * charset.length));\n }\n return result;\n}\n\nasync function generateCodeChallenge(codeVerifier) {\n const encoder = new TextEncoder();\n const data = encoder.encode(codeVerifier);\n const digest = await crypto.subtle.digest(\"SHA-256\", data);\n return btoa(String.fromCharCode(...new Uint8Array(digest)))\n .replace(/\\+/g, \"-\")\n .replace(/\\//g, \"_\")\n .replace(/=+$/, \"\");\n}\n\n// ✅ Shopifyへの認証リダイレクト\nexport async function redirectCustomerAuthorize(\n shopId,\n clientId,\n userMail,\n callbackUri,\n redirectUri,\n) {\n //呼び出し元の戻り先\n const statePayload = {\n ts: Date.now(),\n random: Math.random().toString(36).substring(2),\n return_url: redirectUri,\n };\n //stateで渡しておく\n const state = btoa(JSON.stringify(statePayload));\n const nonce = generateNonce();\n const codeVerifier = generateCodeVerifier();\n const codeChallenge = await generateCodeChallenge(codeVerifier);\n\n localStorage.setItem(\"shopify_code_verifier\", codeVerifier);\n localStorage.setItem(\"shopify_state\", state);\n localStorage.setItem(\"shopify_nonce\", nonce);\n localStorage.setItem(\"shopify_client_id\", clientId);\n localStorage.setItem(\"shopify_user_mail\", userMail);\n localStorage.setItem(\"shopify_shop_id\", shopId);\n localStorage.setItem(\"shopify_redirect_uri\", callbackUri); //ログアウトの処理で使用する\n\n const url = new URL(\n `https://shopify.com/authentication/${shopId}/oauth/authorize`,\n );\n url.searchParams.append(\"scope\", \"openid email customer-account-api:full\");\n url.searchParams.append(\"client_id\", clientId);\n url.searchParams.append(\"response_type\", \"code\");\n url.searchParams.append(\"redirect_uri\", callbackUri);\n url.searchParams.append(\"state\", state);\n url.searchParams.append(\"nonce\", nonce);\n url.searchParams.append(\"code_challenge\", codeChallenge);\n url.searchParams.append(\"code_challenge_method\", \"S256\");\n\n window.location.href = url.toString();\n}\n\n// ✅ トークンがあれば検証(Storefront API 経由で customer を取得)\nexport async function checkCustomerLoginState() {\n const token = localStorage.getItem(\"shopify_customer_token\");\n\n if (!token) return false;\n\n const checkUrl = \"/wp-json/itmar-ec-relate/v1/shopify-login-check\";\n const postData = {\n nonce: itmar_option.nonce,\n token: JSON.stringify({ token }),\n };\n sendRegistrationAjax(checkUrl, postData, true)\n .done(function (res) {\n console.log(res);\n })\n .fail(function (xhr, status, error) {\n alert(\"サーバーエラー: \" + error);\n console.error(xhr.responseText);\n });\n}\n\n/**\n * @param {string} urlOrPath - RESTは '/itmar-shopify/v1/...' でも '/wp-json/...' でもOK。admin-ajaxは '/wp-admin/admin-ajax.php'\n * @param {object} data - 送信するデータ。nonce は data._wpnonce か data.nonce に入れておけばOK\n * @param {'auto'|'rest'|'ajax'} mode - 既定は 'auto'\n */\nexport async function sendRegistrationRequest(\n urlOrPath,\n data = {},\n mode = \"auto\",\n) {\n const isRestUrlLike = (u) =>\n u.startsWith(\"/wp-json\") || !u.startsWith(\"/wp-admin\");\n\n // 送信先の確定(RESTのときは /wp-json 省略パスでもOKにする)\n let isRest;\n if (mode === \"auto\") {\n isRest = isRestUrlLike(urlOrPath);\n } else {\n isRest = mode === \"rest\";\n }\n\n let url = urlOrPath;\n\n if (isRest) {\n // '/itmar-shopify/v1/...' のようなパスだけ渡されたら /wp-json を補う\n if (!url.startsWith(\"/wp-json\")) {\n const root =\n (window.wpApiSettings && window.wpApiSettings.root) || \"/wp-json/\";\n url = root.replace(/\\/+$/, \"/\") + url.replace(/^\\/+/, \"\");\n }\n }\n\n const fetchOptions = {\n method: \"POST\",\n credentials: \"same-origin\", // 同一オリジン Cookie\n headers: {},\n };\n\n // ノンス抽出(_wpnonce を優先)\n const nonce =\n data._wpnonce ||\n data.nonce ||\n (window.wpApiSettings && window.wpApiSettings.nonce);\n\n if (isRest) {\n fetchOptions.headers[\"Content-Type\"] = \"application/json\";\n if (nonce) fetchOptions.headers[\"X-WP-Nonce\"] = nonce;\n\n // nonce系は本文から除く(任意)\n const { _wpnonce, nonce: _legacyNonce, ...rest } = data;\n fetchOptions.body = JSON.stringify(rest);\n } else {\n // admin-ajax は URLSearchParams で送る\n const form = new URLSearchParams();\n Object.entries(data).forEach(([k, v]) => {\n if (v !== undefined && v !== null) form.append(k, String(v));\n });\n // ノンスは _wpnonce に統一\n if (nonce && !form.has(\"_wpnonce\")) form.append(\"_wpnonce\", nonce);\n fetchOptions.body = form;\n }\n\n const res = await fetch(url, fetchOptions);\n\n // WP REST はメソッド不一致・ルートなし等でも JSON 返さないことがあるので分岐\n const contentType = res.headers.get(\"content-type\") || \"\";\n const tryJson = contentType.includes(\"application/json\");\n\n if (!res.ok) {\n let msg = `HTTP ${res.status}`;\n if (tryJson) {\n try {\n const j = await res.json();\n msg += j.message ? `: ${j.message}` : \"\";\n } catch {}\n } else {\n const t = await res.text();\n if (t) msg += `: ${t.slice(0, 200)}`;\n }\n throw new Error(msg);\n }\n\n return tryJson ? res.json() : res.text();\n}\n"],"names":["generateNonce","length","arguments","undefined","characters","nonce","i","charAt","Math","floor","random","generateCodeVerifier","charset","result","generateCodeChallenge","_x","_generateCodeChallenge","apply","_asyncToGenerator","codeVerifier","encoder","TextEncoder","data","encode","digest","crypto","subtle","btoa","String","fromCharCode","Uint8Array","replace","redirectCustomerAuthorize","_x2","_x3","_x4","_x5","_x6","_redirectCustomerAuthorize","shopId","clientId","userMail","callbackUri","redirectUri","statePayload","ts","Date","now","toString","substring","return_url","state","JSON","stringify","codeChallenge","localStorage","setItem","url","URL","concat","searchParams","append","window","location","href","checkCustomerLoginState","_checkCustomerLoginState","token","getItem","checkUrl","postData","itmar_option","sendRegistrationAjax","done","res","console","log","fail","xhr","status","error","alert","responseText","sendRegistrationRequest","_x7","_sendRegistrationRequest","urlOrPath","mode","isRestUrlLike","u","startsWith","isRest","root","wpApiSettings","fetchOptions","method","credentials","headers","_wpnonce","_legacyNonce","rest","_objectWithoutProperties","_excluded","body","form","URLSearchParams","Object","entries","forEach","_ref","k","v","has","fetch","contentType","get","tryJson","includes","ok","msg","j","json","message","_unused","t","text","slice","Error"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shopfiApi.js","sources":["../../src/shopfiApi.ts"],"sourcesContent":[null],"names":["__"],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
interface AnimeAttributes {
|
|
2
|
+
pattern?: string;
|
|
3
|
+
delay?: number | string;
|
|
4
|
+
duration?: number | string;
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
}
|
|
7
|
+
export declare const anime_comp: (attributes: AnimeAttributes) => import("styled-components").RuleSet<object>;
|
|
8
|
+
interface AnimePrm {
|
|
9
|
+
pattern: string;
|
|
10
|
+
duration: number;
|
|
11
|
+
delay: number;
|
|
12
|
+
trigger: string;
|
|
13
|
+
}
|
|
14
|
+
interface AnimationBlockProps {
|
|
15
|
+
attributes: {
|
|
16
|
+
is_anime: boolean;
|
|
17
|
+
anime_prm: AnimePrm;
|
|
18
|
+
};
|
|
19
|
+
onChange: (newAttributes: Partial<AnimationBlockProps["attributes"]>) => void;
|
|
20
|
+
}
|
|
21
|
+
export default function AnimationBlock(props: AnimationBlockProps): JSX.Element;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ElementType } from "react";
|
|
2
|
+
interface BlockEditWrapperProps {
|
|
3
|
+
lazyComponent: ElementType;
|
|
4
|
+
[key: string]: any;
|
|
5
|
+
}
|
|
6
|
+
declare function BlockEditWrapper({ lazyComponent: LazyComponent, ...props }: BlockEditWrapperProps): JSX.Element;
|
|
7
|
+
export default BlockEditWrapper;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { RefObject } from "@wordpress/element";
|
|
2
|
+
import { GridAttributes } from "./GridControls";
|
|
3
|
+
interface BlockPlaceAttributes {
|
|
4
|
+
positionType: string;
|
|
5
|
+
isPosCenter: boolean;
|
|
6
|
+
default_val: any;
|
|
7
|
+
mobile_val: any;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
interface BlockPlaceProps {
|
|
11
|
+
attributes: BlockPlaceAttributes;
|
|
12
|
+
clientId: string;
|
|
13
|
+
blockRef: RefObject<HTMLElement>;
|
|
14
|
+
isMobile: boolean;
|
|
15
|
+
isSubmenu: boolean;
|
|
16
|
+
isParallax: boolean;
|
|
17
|
+
onDirectionChange: (dir: string) => void;
|
|
18
|
+
onReverseChange: (checked: boolean) => void;
|
|
19
|
+
onWrapChange: (checked: boolean) => void;
|
|
20
|
+
onFlexChange: (strech: string, pos: string) => void;
|
|
21
|
+
onVerticalChange: (pos: string) => void;
|
|
22
|
+
onAlignChange: (pos: string) => void;
|
|
23
|
+
onWidthChange: (key: string, widthVal: number | string) => void;
|
|
24
|
+
onFreeWidthChange: (key: string, freeVal: number | string) => void;
|
|
25
|
+
onFlexItemChange: (obj: object) => void;
|
|
26
|
+
onPosValueChange: (obj: object) => void;
|
|
27
|
+
onFreeHeightChange: (val: number | string) => void;
|
|
28
|
+
onHeightChange: (val: string) => void;
|
|
29
|
+
onIsPosCenterChange: (checked: boolean) => void;
|
|
30
|
+
onPositionChange: (val: string) => void;
|
|
31
|
+
onGridChange: (attr: Partial<GridAttributes>) => void;
|
|
32
|
+
}
|
|
33
|
+
export default function BlockPlace(props: BlockPlaceProps): JSX.Element;
|
|
34
|
+
interface BlockWidthProps {
|
|
35
|
+
attributes: any;
|
|
36
|
+
isMobile: boolean;
|
|
37
|
+
isSubmenu: boolean;
|
|
38
|
+
onWidthChange: (key: string, widthVal: string | number) => void;
|
|
39
|
+
onFreeWidthChange: (key: string, freeVal: string | number) => void;
|
|
40
|
+
}
|
|
41
|
+
export declare function BlockWidth(props: BlockWidthProps): JSX.Element;
|
|
42
|
+
interface BlockHeightProps {
|
|
43
|
+
attributes: any;
|
|
44
|
+
isMobile: boolean;
|
|
45
|
+
onHeightChange: (val: string) => void;
|
|
46
|
+
onFreeHeightChange: (freeVal: string | number) => void;
|
|
47
|
+
}
|
|
48
|
+
export declare function BlockHeight(props: BlockHeightProps): JSX.Element;
|
|
49
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const useRebuildChangeField: (dispAttributeArray: any[], // 外部から渡される配列
|
|
2
|
+
selectedFields: {
|
|
3
|
+
key: string;
|
|
4
|
+
label: string;
|
|
5
|
+
block: string;
|
|
6
|
+
}[], pickupType: string, dispTaxonomies: string[], sectionCount: number, domType: string, clientId: string, insertId: string, pluginOption: string) => void;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
interface DateRange {
|
|
2
|
+
startYear: number;
|
|
3
|
+
startMonth: number;
|
|
4
|
+
endYear: number;
|
|
5
|
+
endMonth: number;
|
|
6
|
+
}
|
|
7
|
+
interface DateUnit {
|
|
8
|
+
id: string;
|
|
9
|
+
value: string;
|
|
10
|
+
label: string;
|
|
11
|
+
classname: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const generateDateArray: (dateObj: DateRange, isMonth: boolean) => DateUnit[];
|
|
14
|
+
export interface Holiday {
|
|
15
|
+
date: string | number;
|
|
16
|
+
name: string;
|
|
17
|
+
}
|
|
18
|
+
interface CalendarDay {
|
|
19
|
+
date: number;
|
|
20
|
+
weekday: number;
|
|
21
|
+
holiday?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare const generateMonthCalendar: (dateString: string, holidays?: Holiday[] | null) => CalendarDay[];
|
|
24
|
+
interface DateRange {
|
|
25
|
+
startYear: number;
|
|
26
|
+
startMonth: number;
|
|
27
|
+
endYear: number;
|
|
28
|
+
endMonth: number;
|
|
29
|
+
}
|
|
30
|
+
interface PeriodCtrlProps {
|
|
31
|
+
startYear: number;
|
|
32
|
+
endYear: number;
|
|
33
|
+
dateSpan: DateRange;
|
|
34
|
+
isMonth: boolean;
|
|
35
|
+
onChange: (newSpanObj: {
|
|
36
|
+
dateSpan: DateRange;
|
|
37
|
+
}) => void;
|
|
38
|
+
}
|
|
39
|
+
export declare const PeriodCtrl: ({ startYear, endYear, dateSpan, isMonth, onChange, }: PeriodCtrlProps) => JSX.Element;
|
|
40
|
+
interface PeriodQuery {
|
|
41
|
+
after: string;
|
|
42
|
+
before: string;
|
|
43
|
+
}
|
|
44
|
+
export declare const getPeriodQuery: (dateString: string | undefined | null) => PeriodQuery | null;
|
|
45
|
+
export declare const getTodayYearMonth: () => string;
|
|
46
|
+
export declare const getTodayYear: () => number;
|
|
47
|
+
export declare const getTodayMonth: () => number;
|
|
48
|
+
interface MonthRange {
|
|
49
|
+
ym: string;
|
|
50
|
+
from: string;
|
|
51
|
+
to: string;
|
|
52
|
+
year: number;
|
|
53
|
+
month: number;
|
|
54
|
+
lastDay: number;
|
|
55
|
+
}
|
|
56
|
+
export declare const getMonthRangeYmd: (selectedMonth: string | undefined | null) => MonthRange;
|
|
57
|
+
export declare const normalizeDateYYYYMMDD: (value: string) => string;
|
|
58
|
+
/**
|
|
59
|
+
* 様々な形式の「日」の入力と「選択された月」を組み合わせて YYYY-MM-DD 形式を返す
|
|
60
|
+
*/
|
|
61
|
+
export declare const toYmdFromMonthAndDay: (selectedMonth: string | undefined | null, dayValue: string | number | undefined | null) => string;
|
|
62
|
+
/**
|
|
63
|
+
* カレンダーの grid-template-areas 用の文字列を生成する
|
|
64
|
+
* @param firstDayOfMonth 月の最初の日の曜日番号 (0:日, 1:月...)
|
|
65
|
+
* @param totalDays 月の総日数 (28-31)
|
|
66
|
+
* @param isMonday 月曜始まりにするかどうか
|
|
67
|
+
*/
|
|
68
|
+
export declare const generateGridAreas: (firstDayOfMonth: number, totalDays: number, isMonday: boolean) => string;
|
|
69
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { RefObject } from "@wordpress/element";
|
|
2
|
+
interface PositionString {
|
|
3
|
+
x: string;
|
|
4
|
+
y: string;
|
|
5
|
+
}
|
|
6
|
+
export declare const useDraggingMove: (isMovable: boolean, blockRef: RefObject<HTMLElement>, // ReactのRef型を指定
|
|
7
|
+
position: PositionString, onPositionChange: (pos: PositionString) => void) => void;
|
|
8
|
+
interface DraggableBoxProps {
|
|
9
|
+
attributes: {
|
|
10
|
+
x: string;
|
|
11
|
+
y: string;
|
|
12
|
+
};
|
|
13
|
+
onPositionChange: (newPos: {
|
|
14
|
+
x: string;
|
|
15
|
+
y: string;
|
|
16
|
+
}) => void;
|
|
17
|
+
}
|
|
18
|
+
export default function DraggableBox({ attributes, onPositionChange, }: DraggableBoxProps): JSX.Element;
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
interface GridCell {
|
|
2
|
+
rowInx: number;
|
|
3
|
+
colInx: number;
|
|
4
|
+
}
|
|
5
|
+
interface GridElement {
|
|
6
|
+
startCell: GridCell;
|
|
7
|
+
endCell: GridCell;
|
|
8
|
+
value?: string;
|
|
9
|
+
[key: string]: any;
|
|
10
|
+
}
|
|
11
|
+
export interface GridAttributes {
|
|
12
|
+
gridElms: GridElement[];
|
|
13
|
+
rowNum: number;
|
|
14
|
+
colNum: number;
|
|
15
|
+
rowGap: string | number;
|
|
16
|
+
colGap: string | number;
|
|
17
|
+
rowUnit: string[];
|
|
18
|
+
colUnit: string[];
|
|
19
|
+
[key: string]: any;
|
|
20
|
+
}
|
|
21
|
+
interface GridControlsProps {
|
|
22
|
+
attributes: GridAttributes;
|
|
23
|
+
clientId: string;
|
|
24
|
+
onChange: (newAttrs: Partial<GridAttributes>) => void;
|
|
25
|
+
}
|
|
26
|
+
declare const GridControls: ({ attributes, clientId, onChange, }: GridControlsProps) => JSX.Element;
|
|
27
|
+
export default GridControls;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface IconStyle {
|
|
2
|
+
icon_type: "awesome" | "image" | "avatar" | string;
|
|
3
|
+
icon_url?: string;
|
|
4
|
+
icon_name?: string;
|
|
5
|
+
icon_pos?: "left" | "right" | string;
|
|
6
|
+
icon_size?: string;
|
|
7
|
+
icon_color?: string;
|
|
8
|
+
icon_space?: string;
|
|
9
|
+
icon_family?: string;
|
|
10
|
+
}
|
|
11
|
+
interface IconControlProps {
|
|
12
|
+
iconStyle: IconStyle;
|
|
13
|
+
setPosition?: boolean;
|
|
14
|
+
onChange: (newStyle: IconStyle) => void;
|
|
15
|
+
}
|
|
16
|
+
declare const _default: ({ iconStyle, setPosition, onChange }: IconControlProps) => JSX.Element;
|
|
17
|
+
export default _default;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Masonry グリッドを初期化する共通関数
|
|
3
|
+
*
|
|
4
|
+
* @param {HTMLElement} gridEl - `.itmar-masonry-grid` のコンテナ要素
|
|
5
|
+
* @param {Array<{ url: string, alt?: string }>} images - 描画する画像リスト
|
|
6
|
+
* @param {Object} options
|
|
7
|
+
* @param {number} options.columns - カラム数
|
|
8
|
+
* @param {boolean} [options.renderItems=true]
|
|
9
|
+
* true: この関数内で gridEl をクリアして <figure><img> を追加する
|
|
10
|
+
* false: 既にある .itmar-masonry-item をそのまま使い、幅だけ更新する
|
|
11
|
+
*
|
|
12
|
+
* @returns {any|null} Masonry インスタンス(なければ null)
|
|
13
|
+
*/
|
|
14
|
+
declare global {
|
|
15
|
+
interface Window {
|
|
16
|
+
Masonry: any;
|
|
17
|
+
imagesLoaded: any;
|
|
18
|
+
}
|
|
19
|
+
interface HTMLElement {
|
|
20
|
+
__masonryInstance?: any;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
interface MasonryImage {
|
|
24
|
+
url: string;
|
|
25
|
+
alt?: string;
|
|
26
|
+
}
|
|
27
|
+
interface MasonryOptions {
|
|
28
|
+
columns?: number;
|
|
29
|
+
renderItems?: boolean;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Masonry レイアウトを初期化・更新する
|
|
33
|
+
*/
|
|
34
|
+
export default function MasonryControl(gridEl: HTMLElement | null, images?: MasonryImage[], { columns, renderItems }?: MasonryOptions): any;
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
type ArrowDirection = "upper" | "left" | "right" | "under" | "down";
|
|
2
|
+
interface PseudoElmProps {
|
|
3
|
+
direction: ArrowDirection;
|
|
4
|
+
onChange: (value: ArrowDirection) => void;
|
|
5
|
+
}
|
|
6
|
+
interface ArrowProps {
|
|
7
|
+
direction?: ArrowDirection;
|
|
8
|
+
}
|
|
9
|
+
export declare const Arrow: ({ direction }: ArrowProps) => import("styled-components").RuleSet<object>;
|
|
10
|
+
declare const PseudoElm: ({ direction, onChange }: PseudoElmProps) => JSX.Element;
|
|
11
|
+
export default PseudoElm;
|