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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"customHooks.js","sources":["../../src/customHooks.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
interface FormatSettings {
|
|
2
|
+
userFormat: string;
|
|
3
|
+
freeStrFormat: string;
|
|
4
|
+
decimal: number;
|
|
5
|
+
}
|
|
6
|
+
interface FormatSelectControlProps {
|
|
7
|
+
titleType: "plaine" | "date" | "user" | string;
|
|
8
|
+
userFormat: string;
|
|
9
|
+
freeStrFormat: string;
|
|
10
|
+
decimal: number;
|
|
11
|
+
onFormatChange: (settings: FormatSettings) => void;
|
|
12
|
+
}
|
|
13
|
+
export declare const FormatSelectControl: ({ titleType, userFormat, freeStrFormat, decimal, onFormatChange, }: FormatSelectControlProps) => JSX.Element;
|
|
14
|
+
/**
|
|
15
|
+
* 値を指定されたフォーマットで整形して返す
|
|
16
|
+
*/
|
|
17
|
+
export declare const displayFormated: (content: any, userFormat: string | undefined, freeStrFormat: string, decimal: number) => string;
|
|
18
|
+
export {};
|
|
@@ -1,156 +1,126 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createElement, Fragment } from '@wordpress/element';
|
|
2
2
|
import { __ } from '@wordpress/i18n';
|
|
3
3
|
import { PanelBody, SelectControl, TextControl, PanelRow, RangeControl } from '@wordpress/components';
|
|
4
4
|
import { getSettings, format } from '@wordpress/date';
|
|
5
5
|
|
|
6
6
|
//日付のフォーマット
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
},
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
},
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
},
|
|
17
|
-
|
|
18
|
-
value: "F j, Y"
|
|
19
|
-
}, {
|
|
20
|
-
label: "HH:mm:ss",
|
|
21
|
-
value: "H:i:s"
|
|
22
|
-
}, {
|
|
23
|
-
label: "YYYY.M.D",
|
|
24
|
-
value: "Y.n.j"
|
|
25
|
-
}, {
|
|
26
|
-
label: "Day, MMMM D, YYYY",
|
|
27
|
-
value: "l, F j, Y"
|
|
28
|
-
}, {
|
|
29
|
-
label: "ddd, MMM D, YYYY",
|
|
30
|
-
value: "D, M j, Y"
|
|
31
|
-
}, {
|
|
32
|
-
label: "YYYY年M月D日 (曜日)",
|
|
33
|
-
value: "Y年n月j日 (l)"
|
|
34
|
-
}];
|
|
7
|
+
const dateFormats = [
|
|
8
|
+
{ label: "YYYY-MM-DD HH:mm:ss", value: "Y-m-d H:i:s" },
|
|
9
|
+
{ label: "MM/DD/YYYY", value: "m/d/Y" },
|
|
10
|
+
{ label: "DD/MM/YYYY", value: "d/m/Y" },
|
|
11
|
+
{ label: "MMMM D, YYYY", value: "F j, Y" },
|
|
12
|
+
{ label: "HH:mm:ss", value: "H:i:s" },
|
|
13
|
+
{ label: "YYYY.M.D", value: "Y.n.j" },
|
|
14
|
+
{ label: "Day, MMMM D, YYYY", value: "l, F j, Y" },
|
|
15
|
+
{ label: "ddd, MMM D, YYYY", value: "D, M j, Y" },
|
|
16
|
+
{ label: "YYYY年M月D日 (曜日)", value: "Y年n月j日 (l)" },
|
|
17
|
+
];
|
|
35
18
|
//プレーンのフォーマット
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
}), (userFormat === null || userFormat === void 0 ? void 0 : userFormat.startsWith("num_")) && /*#__PURE__*/React.createElement(PanelRow, {
|
|
99
|
-
className: "itmar_post_blocks_pannel"
|
|
100
|
-
}, /*#__PURE__*/React.createElement(RangeControl, {
|
|
101
|
-
value: decimal,
|
|
102
|
-
label: __("Decimal Num", "query-blocks"),
|
|
103
|
-
max: 5,
|
|
104
|
-
min: 0,
|
|
105
|
-
onChange: val => onFormatChange({
|
|
106
|
-
userFormat,
|
|
107
|
-
freeStrFormat,
|
|
108
|
-
decimal: val
|
|
109
|
-
})
|
|
110
|
-
}))), isUser && /*#__PURE__*/React.createElement(TextControl, {
|
|
111
|
-
label: __("User Format", "block-collections"),
|
|
112
|
-
value: freeStrFormat,
|
|
113
|
-
onChange: newFormat => onFormatChange({
|
|
114
|
-
userFormat: "str_free",
|
|
115
|
-
freeStrFormat: newFormat,
|
|
116
|
-
decimal
|
|
117
|
-
})
|
|
118
|
-
}));
|
|
19
|
+
const plaineFormats = [
|
|
20
|
+
{
|
|
21
|
+
key: "str_free",
|
|
22
|
+
label: __("Free String", "block-collections"),
|
|
23
|
+
value: "%s",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
key: "num_comma",
|
|
27
|
+
label: __("Numbers (comma separated)", "block-collections"),
|
|
28
|
+
value: {
|
|
29
|
+
style: "decimal",
|
|
30
|
+
useGrouping: true, // カンマ区切り
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
key: "num_no_comma",
|
|
35
|
+
label: __("Numbers (no commas)", "block-collections"),
|
|
36
|
+
value: {
|
|
37
|
+
style: "decimal",
|
|
38
|
+
useGrouping: false,
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
key: "num_amount",
|
|
43
|
+
label: __("Amount", "block-collections"),
|
|
44
|
+
value: {
|
|
45
|
+
style: "currency",
|
|
46
|
+
currency: "JPY",
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
];
|
|
50
|
+
const FormatSelectControl = ({ titleType, userFormat, freeStrFormat, decimal, onFormatChange, }) => {
|
|
51
|
+
const isPlaine = titleType === "plaine";
|
|
52
|
+
const isDate = titleType === "date";
|
|
53
|
+
const isUser = titleType === "user";
|
|
54
|
+
//SelectControlのオプションを生成
|
|
55
|
+
const options = isDate
|
|
56
|
+
? dateFormats
|
|
57
|
+
: plaineFormats.map((f) => ({ label: f.label, value: f.key }));
|
|
58
|
+
return (createElement(PanelBody, { title: __("Display Format Setting", "block-collections") },
|
|
59
|
+
(isPlaine || isDate) && (createElement(Fragment, null,
|
|
60
|
+
createElement(SelectControl, { label: __("Select Format", "block-collections"), value: userFormat, options: options, onChange: (newFormat) => onFormatChange({
|
|
61
|
+
userFormat: newFormat,
|
|
62
|
+
freeStrFormat,
|
|
63
|
+
decimal,
|
|
64
|
+
}) }),
|
|
65
|
+
userFormat?.startsWith("str_") && (createElement(TextControl, { label: __("String Format", "block-collections"), value: freeStrFormat, onChange: (newFormat) => onFormatChange({
|
|
66
|
+
userFormat,
|
|
67
|
+
freeStrFormat: newFormat,
|
|
68
|
+
decimal,
|
|
69
|
+
}) })),
|
|
70
|
+
userFormat?.startsWith("num_") && (createElement(PanelRow, { className: "itmar_post_blocks_pannel" },
|
|
71
|
+
createElement(RangeControl, { value: decimal, label: __("Decimal Num", "query-blocks"), max: 5, min: 0, onChange: (val) => onFormatChange({
|
|
72
|
+
userFormat,
|
|
73
|
+
freeStrFormat,
|
|
74
|
+
decimal: val ?? 0,
|
|
75
|
+
}) }))))),
|
|
76
|
+
isUser && (createElement(TextControl, { label: __("User Format", "block-collections"), value: freeStrFormat, onChange: (newFormat) => onFormatChange({
|
|
77
|
+
userFormat: "str_free",
|
|
78
|
+
freeStrFormat: newFormat,
|
|
79
|
+
decimal,
|
|
80
|
+
}) }))));
|
|
119
81
|
};
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
82
|
+
/**
|
|
83
|
+
* 値を指定されたフォーマットで整形して返す
|
|
84
|
+
*/
|
|
85
|
+
const displayFormated = (content, userFormat, freeStrFormat, decimal) => {
|
|
86
|
+
if (content === undefined || content === null)
|
|
87
|
+
return "";
|
|
88
|
+
// 内部で使用するロケール
|
|
89
|
+
const locale = getSettings().l10n?.locale || "en";
|
|
90
|
+
//日付にフォーマットがあれば、それで書式設定してリターン
|
|
91
|
+
const isDateFormat = dateFormats.find((f) => f.value === userFormat);
|
|
92
|
+
if (isDateFormat && userFormat) {
|
|
93
|
+
// WordPressの format 関数を使用して日付を整形
|
|
94
|
+
return format(userFormat, content);
|
|
95
|
+
}
|
|
96
|
+
//数値や文字列のフォーマット
|
|
97
|
+
const selectedFormat = plaineFormats.find((f) => f.key === userFormat)?.value;
|
|
98
|
+
if (typeof selectedFormat === "object" && selectedFormat !== null) {
|
|
99
|
+
// Intl.NumberFormat オプション
|
|
100
|
+
try {
|
|
101
|
+
const numeric = typeof content === "number" ? content : parseFloat(content);
|
|
102
|
+
if (isNaN(numeric))
|
|
103
|
+
return String(content);
|
|
104
|
+
// `selectedFormat` を元に新しいフォーマット設定を生成(mutateしない)
|
|
105
|
+
// options を型安全に生成
|
|
106
|
+
const options = { ...selectedFormat };
|
|
107
|
+
if (typeof decimal === "number" && decimal > 0) {
|
|
108
|
+
options.minimumFractionDigits = decimal;
|
|
109
|
+
options.maximumFractionDigits = decimal;
|
|
110
|
+
}
|
|
111
|
+
const formatter = new Intl.NumberFormat(locale, options);
|
|
112
|
+
return formatter.format(numeric);
|
|
113
|
+
}
|
|
114
|
+
catch (e) {
|
|
115
|
+
console.warn("Number format failed:", e);
|
|
116
|
+
return String(content);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
else if (typeof selectedFormat === "string") {
|
|
120
|
+
return freeStrFormat.replace("%s", String(content));
|
|
148
121
|
}
|
|
149
|
-
|
|
150
|
-
return
|
|
151
|
-
}
|
|
152
|
-
//フォーマットが見つからないときはそのまま返す
|
|
153
|
-
return content;
|
|
122
|
+
//フォーマットが見つからないときはそのまま返す
|
|
123
|
+
return content;
|
|
154
124
|
};
|
|
155
125
|
|
|
156
126
|
export { FormatSelectControl, displayFormated };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatCreate.js","sources":["../../src/formatCreate.js"],"sourcesContent":["import { __ } from \"@wordpress/i18n\";\nimport {\n PanelBody,\n PanelRow,\n RangeControl,\n TextControl,\n SelectControl,\n} from \"@wordpress/components\";\nimport { format, getSettings } from \"@wordpress/date\";\n\n//日付のフォーマット\nconst dateFormats = [\n { label: \"YYYY-MM-DD HH:mm:ss\", value: \"Y-m-d H:i:s\" },\n { label: \"MM/DD/YYYY\", value: \"m/d/Y\" },\n { label: \"DD/MM/YYYY\", value: \"d/m/Y\" },\n { label: \"MMMM D, YYYY\", value: \"F j, Y\" },\n { label: \"HH:mm:ss\", value: \"H:i:s\" },\n { label: \"YYYY.M.D\", value: \"Y.n.j\" },\n { label: \"Day, MMMM D, YYYY\", value: \"l, F j, Y\" },\n { label: \"ddd, MMM D, YYYY\", value: \"D, M j, Y\" },\n { label: \"YYYY年M月D日 (曜日)\", value: \"Y年n月j日 (l)\" },\n];\n//プレーンのフォーマット\nconst plaineFormats = [\n {\n key: \"str_free\",\n label: __(\"Free String\", \"block-collections\"),\n value: \"%s\",\n },\n {\n key: \"num_comma\",\n label: __(\"Numbers (comma separated)\", \"block-collections\"),\n value: {\n style: \"decimal\",\n useGrouping: true, // カンマ区切り\n },\n },\n {\n key: \"num_no_comma\",\n label: __(\"Numbers (no commas)\", \"block-collections\"),\n value: {\n style: \"decimal\",\n useGrouping: false,\n },\n },\n {\n key: \"num_amount\",\n label: __(\"Amount\", \"block-collections\"),\n value: {\n style: \"currency\",\n currency: \"JPY\",\n },\n },\n];\n\nexport const FormatSelectControl = ({\n titleType,\n userFormat,\n freeStrFormat,\n decimal,\n onFormatChange,\n}) => {\n const isPlaine = titleType === \"plaine\";\n const isDate = titleType === \"date\";\n const isUser = titleType === \"user\";\n\n //SelectControlのオプションを生成\n const options = isDate\n ? dateFormats\n : plaineFormats.map((f) => ({ label: f.label, value: f.key }));\n\n return (\n <PanelBody title={__(\"Display Format Setting\", \"block-collections\")}>\n {(isPlaine || isDate) && (\n <>\n <SelectControl\n label={__(\"Select Format\", \"block-collections\")}\n value={userFormat}\n options={options}\n onChange={(newFormat) =>\n onFormatChange({\n userFormat: newFormat,\n freeStrFormat,\n decimal,\n })\n }\n />\n\n {userFormat?.startsWith(\"str_\") && (\n <TextControl\n label={__(\"String Format\", \"block-collections\")}\n value={freeStrFormat}\n onChange={(newFormat) =>\n onFormatChange({\n userFormat,\n freeStrFormat: newFormat,\n decimal,\n })\n }\n />\n )}\n {userFormat?.startsWith(\"num_\") && (\n <PanelRow className=\"itmar_post_blocks_pannel\">\n <RangeControl\n value={decimal}\n label={__(\"Decimal Num\", \"query-blocks\")}\n max={5}\n min={0}\n onChange={(val) =>\n onFormatChange({\n userFormat,\n freeStrFormat,\n decimal: val,\n })\n }\n />\n </PanelRow>\n )}\n </>\n )}\n\n {isUser && (\n <TextControl\n label={__(\"User Format\", \"block-collections\")}\n value={freeStrFormat}\n onChange={(newFormat) =>\n onFormatChange({\n userFormat: \"str_free\",\n freeStrFormat: newFormat,\n decimal,\n })\n }\n />\n )}\n </PanelBody>\n );\n};\n\nexport const displayFormated = (\n content,\n userFormat,\n freeStrFormat,\n decimal\n) => {\n // 内部で使用するロケール\n const locale = getSettings().l10n?.locale || \"en\";\n\n //日付にフォーマットがあれば、それで書式設定してリターン\n const isDateFormat = dateFormats.find((f) => f.value === userFormat);\n if (isDateFormat) {\n const ret_val = format(userFormat, content, getSettings());\n return ret_val;\n }\n //数値や文字列のフォーマット\n const selectedFormat = plaineFormats.find((f) => f.key === userFormat)?.value;\n if (typeof selectedFormat === \"object\") {\n // Intl.NumberFormat オプション\n try {\n const numeric = parseFloat(content);\n // `selectedFormat` を元に新しいフォーマット設定を生成(mutateしない)\n const options = { ...selectedFormat };\n\n if (typeof decimal === \"number\" && decimal > 0) {\n options.minimumFractionDigits = decimal;\n options.maximumFractionDigits = decimal;\n }\n\n const formatter = new Intl.NumberFormat(locale, options);\n return formatter.format(numeric);\n } catch (e) {\n console.warn(\"Number format failed:\", e);\n return content;\n }\n } else if (typeof selectedFormat === \"string\") {\n return freeStrFormat.replace(\"%s\", content);\n }\n //フォーマットが見つからないときはそのまま返す\n return content;\n};\n"],"names":["dateFormats","label","value","plaineFormats","key","__","style","useGrouping","currency","FormatSelectControl","_ref","titleType","userFormat","freeStrFormat","decimal","onFormatChange","isPlaine","isDate","isUser","options","map","f","React","createElement","PanelBody","title","Fragment","SelectControl","onChange","newFormat","startsWith","TextControl","PanelRow","className","RangeControl","max","min","val","displayFormated","content","_getSettings$l10n","_plaineFormats$find","locale","getSettings","l10n","isDateFormat","find","ret_val","format","selectedFormat","numeric","parseFloat","_objectSpread","minimumFractionDigits","maximumFractionDigits","formatter","Intl","NumberFormat","e","console","warn","replace"],"mappings":";;;;;AAUA;AACA,IAAMA,WAAW,GAAG,CAClB;AAAEC,EAAAA,KAAK,EAAE,qBAAqB;AAAEC,EAAAA,KAAK,EAAE;AAAc,CAAC,EACtD;AAAED,EAAAA,KAAK,EAAE,YAAY;AAAEC,EAAAA,KAAK,EAAE;AAAQ,CAAC,EACvC;AAAED,EAAAA,KAAK,EAAE,YAAY;AAAEC,EAAAA,KAAK,EAAE;AAAQ,CAAC,EACvC;AAAED,EAAAA,KAAK,EAAE,cAAc;AAAEC,EAAAA,KAAK,EAAE;AAAS,CAAC,EAC1C;AAAED,EAAAA,KAAK,EAAE,UAAU;AAAEC,EAAAA,KAAK,EAAE;AAAQ,CAAC,EACrC;AAAED,EAAAA,KAAK,EAAE,UAAU;AAAEC,EAAAA,KAAK,EAAE;AAAQ,CAAC,EACrC;AAAED,EAAAA,KAAK,EAAE,mBAAmB;AAAEC,EAAAA,KAAK,EAAE;AAAY,CAAC,EAClD;AAAED,EAAAA,KAAK,EAAE,kBAAkB;AAAEC,EAAAA,KAAK,EAAE;AAAY,CAAC,EACjD;AAAED,EAAAA,KAAK,EAAE,gBAAgB;AAAEC,EAAAA,KAAK,EAAE;AAAa,CAAC,CACjD;AACD;AACA,IAAMC,aAAa,GAAG,CACpB;AACEC,EAAAA,GAAG,EAAE,UAAU;AACfH,EAAAA,KAAK,EAAEI,EAAE,CAAC,aAAa,EAAE,mBAAmB,CAAC;AAC7CH,EAAAA,KAAK,EAAE;AACT,CAAC,EACD;AACEE,EAAAA,GAAG,EAAE,WAAW;AAChBH,EAAAA,KAAK,EAAEI,EAAE,CAAC,2BAA2B,EAAE,mBAAmB,CAAC;AAC3DH,EAAAA,KAAK,EAAE;AACLI,IAAAA,KAAK,EAAE,SAAS;IAChBC,WAAW,EAAE,IAAI;AACnB;AACF,CAAC,EACD;AACEH,EAAAA,GAAG,EAAE,cAAc;AACnBH,EAAAA,KAAK,EAAEI,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;AACrDH,EAAAA,KAAK,EAAE;AACLI,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,WAAW,EAAE;AACf;AACF,CAAC,EACD;AACEH,EAAAA,GAAG,EAAE,YAAY;AACjBH,EAAAA,KAAK,EAAEI,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;AACxCH,EAAAA,KAAK,EAAE;AACLI,IAAAA,KAAK,EAAE,UAAU;AACjBE,IAAAA,QAAQ,EAAE;AACZ;AACF,CAAC,CACF;AAEM,IAAMC,mBAAmB,GAAGC,IAAA,IAM7B;EAAA,IAN8B;IAClCC,SAAS;IACTC,UAAU;IACVC,aAAa;IACbC,OAAO;AACPC,IAAAA;AACF,GAAC,GAAAL,IAAA;AACC,EAAA,IAAMM,QAAQ,GAAGL,SAAS,KAAK,QAAQ;AACvC,EAAA,IAAMM,MAAM,GAAGN,SAAS,KAAK,MAAM;AACnC,EAAA,IAAMO,MAAM,GAAGP,SAAS,KAAK,MAAM;;AAEnC;EACA,IAAMQ,OAAO,GAAGF,MAAM,GAClBjB,WAAW,GACXG,aAAa,CAACiB,GAAG,CAAEC,CAAC,KAAM;IAAEpB,KAAK,EAAEoB,CAAC,CAACpB,KAAK;IAAEC,KAAK,EAAEmB,CAAC,CAACjB;AAAI,GAAC,CAAC,CAAC;AAEhE,EAAA,oBACEkB,KAAA,CAAAC,aAAA,CAACC,SAAS,EAAA;AAACC,IAAAA,KAAK,EAAEpB,EAAE,CAAC,wBAAwB,EAAE,mBAAmB;AAAE,GAAA,EACjE,CAACW,QAAQ,IAAIC,MAAM,kBAClBK,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAI,QAAA,EAAA,IAAA,eACEJ,KAAA,CAAAC,aAAA,CAACI,aAAa,EAAA;AACZ1B,IAAAA,KAAK,EAAEI,EAAE,CAAC,eAAe,EAAE,mBAAmB,CAAE;AAChDH,IAAAA,KAAK,EAAEU,UAAW;AAClBO,IAAAA,OAAO,EAAEA,OAAQ;AACjBS,IAAAA,QAAQ,EAAGC,SAAS,IAClBd,cAAc,CAAC;AACbH,MAAAA,UAAU,EAAEiB,SAAS;MACrBhB,aAAa;AACbC,MAAAA;KACD;AACF,GACF,CAAC,EAED,CAAAF,UAAU,KAAA,IAAA,IAAVA,UAAU,uBAAVA,UAAU,CAAEkB,UAAU,CAAC,MAAM,CAAC,kBAC7BR,KAAA,CAAAC,aAAA,CAACQ,WAAW,EAAA;AACV9B,IAAAA,KAAK,EAAEI,EAAE,CAAC,eAAe,EAAE,mBAAmB,CAAE;AAChDH,IAAAA,KAAK,EAAEW,aAAc;AACrBe,IAAAA,QAAQ,EAAGC,SAAS,IAClBd,cAAc,CAAC;MACbH,UAAU;AACVC,MAAAA,aAAa,EAAEgB,SAAS;AACxBf,MAAAA;KACD;AACF,GACF,CACF,EACA,CAAAF,UAAU,KAAA,IAAA,IAAVA,UAAU,uBAAVA,UAAU,CAAEkB,UAAU,CAAC,MAAM,CAAC,kBAC7BR,KAAA,CAAAC,aAAA,CAACS,QAAQ,EAAA;AAACC,IAAAA,SAAS,EAAC;AAA0B,GAAA,eAC5CX,KAAA,CAAAC,aAAA,CAACW,YAAY,EAAA;AACXhC,IAAAA,KAAK,EAAEY,OAAQ;AACfb,IAAAA,KAAK,EAAEI,EAAE,CAAC,aAAa,EAAE,cAAc,CAAE;AACzC8B,IAAAA,GAAG,EAAE,CAAE;AACPC,IAAAA,GAAG,EAAE,CAAE;AACPR,IAAAA,QAAQ,EAAGS,GAAG,IACZtB,cAAc,CAAC;MACbH,UAAU;MACVC,aAAa;AACbC,MAAAA,OAAO,EAAEuB;KACV;GAEJ,CACO,CAEZ,CACH,EAEAnB,MAAM,iBACLI,KAAA,CAAAC,aAAA,CAACQ,WAAW,EAAA;AACV9B,IAAAA,KAAK,EAAEI,EAAE,CAAC,aAAa,EAAE,mBAAmB,CAAE;AAC9CH,IAAAA,KAAK,EAAEW,aAAc;AACrBe,IAAAA,QAAQ,EAAGC,SAAS,IAClBd,cAAc,CAAC;AACbH,MAAAA,UAAU,EAAE,UAAU;AACtBC,MAAAA,aAAa,EAAEgB,SAAS;AACxBf,MAAAA;KACD;AACF,GACF,CAEM,CAAC;AAEhB;AAEO,IAAMwB,eAAe,GAAGA,CAC7BC,OAAO,EACP3B,UAAU,EACVC,aAAa,EACbC,OAAO,KACJ;EAAA,IAAA0B,iBAAA,EAAAC,mBAAA;AACH;AACA,EAAA,IAAMC,MAAM,GAAG,CAAA,CAAAF,iBAAA,GAAAG,WAAW,EAAE,CAACC,IAAI,cAAAJ,iBAAA,KAAA,MAAA,GAAA,MAAA,GAAlBA,iBAAA,CAAoBE,MAAM,KAAI,IAAI;;AAEjD;AACA,EAAA,IAAMG,YAAY,GAAG7C,WAAW,CAAC8C,IAAI,CAAEzB,CAAC,IAAKA,CAAC,CAACnB,KAAK,KAAKU,UAAU,CAAC;AACpE,EAAA,IAAIiC,YAAY,EAAE;IAChB,IAAME,OAAO,GAAGC,MAAM,CAACpC,UAAU,EAAE2B,OAAO,EAAEI,WAAW,EAAE,CAAC;AAC1D,IAAA,OAAOI,OAAO;AAChB,EAAA;AACA;EACA,IAAME,cAAc,IAAAR,mBAAA,GAAGtC,aAAa,CAAC2C,IAAI,CAAEzB,CAAC,IAAKA,CAAC,CAACjB,GAAG,KAAKQ,UAAU,CAAC,cAAA6B,mBAAA,KAAA,MAAA,GAAA,MAAA,GAA/CA,mBAAA,CAAiDvC,KAAK;AAC7E,EAAA,IAAI,OAAO+C,cAAc,KAAK,QAAQ,EAAE;AACtC;IACA,IAAI;AACF,MAAA,IAAMC,OAAO,GAAGC,UAAU,CAACZ,OAAO,CAAC;AACnC;AACA,MAAA,IAAMpB,OAAO,GAAAiC,cAAA,CAAA,EAAA,EAAQH,cAAc,CAAE;MAErC,IAAI,OAAOnC,OAAO,KAAK,QAAQ,IAAIA,OAAO,GAAG,CAAC,EAAE;QAC9CK,OAAO,CAACkC,qBAAqB,GAAGvC,OAAO;QACvCK,OAAO,CAACmC,qBAAqB,GAAGxC,OAAO;AACzC,MAAA;MAEA,IAAMyC,SAAS,GAAG,IAAIC,IAAI,CAACC,YAAY,CAACf,MAAM,EAAEvB,OAAO,CAAC;AACxD,MAAA,OAAOoC,SAAS,CAACP,MAAM,CAACE,OAAO,CAAC;IAClC,CAAC,CAAC,OAAOQ,CAAC,EAAE;AACVC,MAAAA,OAAO,CAACC,IAAI,CAAC,uBAAuB,EAAEF,CAAC,CAAC;AACxC,MAAA,OAAOnB,OAAO;AAChB,IAAA;AACF,EAAA,CAAC,MAAM,IAAI,OAAOU,cAAc,KAAK,QAAQ,EAAE;AAC7C,IAAA,OAAOpC,aAAa,CAACgD,OAAO,CAAC,IAAI,EAAEtB,OAAO,CAAC;AAC7C,EAAA;AACA;AACA,EAAA,OAAOA,OAAO;AAChB;;;;"}
|
|
1
|
+
{"version":3,"file":"formatCreate.js","sources":["../../src/formatCreate.tsx"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
interface HSL {
|
|
2
|
+
hue: number;
|
|
3
|
+
saturation: number;
|
|
4
|
+
lightness: number;
|
|
5
|
+
}
|
|
6
|
+
interface RGB {
|
|
7
|
+
red: number;
|
|
8
|
+
green: number;
|
|
9
|
+
blue: number;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* HSLを16進数カラーコード(#RRGGBB)に変換
|
|
13
|
+
*/
|
|
14
|
+
export declare function hslToRgb16(hue: number | string, saturation: number | string, lightness: number | string): string | false;
|
|
15
|
+
/**
|
|
16
|
+
* 16進数カラーコードをHSLオブジェクトに変換
|
|
17
|
+
*/
|
|
18
|
+
export declare function rgb16ToHsl(strRgb16: string): HSL | false;
|
|
19
|
+
/**
|
|
20
|
+
* 16進数カラーコードをRGBオブジェクトに変換
|
|
21
|
+
*/
|
|
22
|
+
export declare function HexToRGB(strRgb16: string): RGB | false;
|
|
23
|
+
export {};
|
package/build/esm/hslToRgb.js
CHANGED
|
@@ -1,128 +1,124 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
const createRGB = (inputStr) => {
|
|
2
|
+
//16進数変換の関数
|
|
3
|
+
const componentToHex = (c) => {
|
|
4
|
+
const hex = parseInt(String(c), 10).toString(16);
|
|
5
|
+
return hex.length === 1 ? "0" + hex : hex;
|
|
6
|
+
};
|
|
7
|
+
// デフォルト値(白)
|
|
8
|
+
if (!inputStr)
|
|
9
|
+
return ["ff", "ff", "ff"];
|
|
10
|
+
let rgb;
|
|
11
|
+
// #000000 形式の場合
|
|
12
|
+
if (/^#[0-9a-fA-F]{6}$/.test(inputStr)) {
|
|
13
|
+
rgb = [inputStr.slice(1, 3), inputStr.slice(3, 5), inputStr.slice(5, 7)];
|
|
14
|
+
}
|
|
15
|
+
// rgb(0,0,0) 形式の場合
|
|
16
|
+
else {
|
|
17
|
+
const match = inputStr.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
|
|
18
|
+
if (match) {
|
|
19
|
+
rgb = [
|
|
20
|
+
componentToHex(match[1]),
|
|
21
|
+
componentToHex(match[2]),
|
|
22
|
+
componentToHex(match[3]),
|
|
23
|
+
];
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
// サポートされていない形式の場合は白を返す
|
|
27
|
+
rgb = ["ff", "ff", "ff"];
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return rgb;
|
|
22
31
|
};
|
|
32
|
+
/**
|
|
33
|
+
* HSLを16進数カラーコード(#RRGGBB)に変換
|
|
34
|
+
*/
|
|
23
35
|
function hslToRgb16(hue, saturation, lightness) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
lightness = Number(lightness) / 100;
|
|
35
|
-
if (saturation === 0) {
|
|
36
|
-
red = lightness;
|
|
37
|
-
green = lightness;
|
|
38
|
-
blue = lightness;
|
|
39
|
-
} else {
|
|
40
|
-
hueToRgb = function hueToRgb(p, q, t) {
|
|
41
|
-
if (t < 0) t += 1;
|
|
42
|
-
if (t > 1) t -= 1;
|
|
43
|
-
if (t < 1 / 6) {
|
|
44
|
-
p += (q - p) * 6 * t;
|
|
45
|
-
} else if (t < 1 / 2) {
|
|
46
|
-
p = q;
|
|
47
|
-
} else if (t < 2 / 3) {
|
|
48
|
-
p += (q - p) * (2 / 3 - t) * 6;
|
|
36
|
+
const h = Number(hue);
|
|
37
|
+
const s = Number(saturation);
|
|
38
|
+
const l = Number(lightness);
|
|
39
|
+
if (h >= 0 && h <= 360 && s >= 0 && s <= 100 && l >= 0 && l <= 100) {
|
|
40
|
+
let red = 0, green = 0, blue = 0;
|
|
41
|
+
const hNorm = h / 360;
|
|
42
|
+
const sNorm = s / 100;
|
|
43
|
+
const lNorm = l / 100;
|
|
44
|
+
if (sNorm === 0) {
|
|
45
|
+
red = green = blue = lNorm;
|
|
49
46
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
47
|
+
else {
|
|
48
|
+
const hueToRgb = (p, q, t) => {
|
|
49
|
+
if (t < 0)
|
|
50
|
+
t += 1;
|
|
51
|
+
if (t > 1)
|
|
52
|
+
t -= 1;
|
|
53
|
+
if (t < 1 / 6)
|
|
54
|
+
return p + (q - p) * 6 * t;
|
|
55
|
+
if (t < 1 / 2)
|
|
56
|
+
return q;
|
|
57
|
+
if (t < 2 / 3)
|
|
58
|
+
return p + (q - p) * (2 / 3 - t) * 6;
|
|
59
|
+
return p;
|
|
60
|
+
};
|
|
61
|
+
const q = lNorm < 0.5 ? lNorm * (1 + sNorm) : lNorm + sNorm - lNorm * sNorm;
|
|
62
|
+
const p = 2 * lNorm - q;
|
|
63
|
+
red = hueToRgb(p, q, hNorm + 1 / 3);
|
|
64
|
+
green = hueToRgb(p, q, hNorm);
|
|
65
|
+
blue = hueToRgb(p, q, hNorm - 1 / 3);
|
|
66
|
+
}
|
|
67
|
+
const toHex = (c) => Math.round(c * 255)
|
|
68
|
+
.toString(16)
|
|
69
|
+
.padStart(2, "0");
|
|
70
|
+
return `#${toHex(red)}${toHex(green)}${toHex(blue)}`;
|
|
61
71
|
}
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
return result;
|
|
72
|
+
return false;
|
|
65
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* 16進数カラーコードをHSLオブジェクトに変換
|
|
76
|
+
*/
|
|
66
77
|
function rgb16ToHsl(strRgb16) {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
} else if (max === green) {
|
|
95
|
-
hue = 2 + (blue - red) / diff;
|
|
96
|
-
} else {
|
|
97
|
-
hue = 4 + (red - green) / diff;
|
|
98
|
-
}
|
|
99
|
-
hue /= 6;
|
|
78
|
+
const rgb = createRGB(strRgb16); // 先ほど定義した [string, string, string] を返す関数
|
|
79
|
+
const [rHex, gHex, bHex] = rgb;
|
|
80
|
+
const hexPattern = /^[0-9a-f]{2}$/i;
|
|
81
|
+
if (hexPattern.test(rHex) && hexPattern.test(gHex) && hexPattern.test(bHex)) {
|
|
82
|
+
let h = 0, s = 0;
|
|
83
|
+
const r = parseInt(rHex, 16) / 255;
|
|
84
|
+
const g = parseInt(gHex, 16) / 255;
|
|
85
|
+
const b = parseInt(bHex, 16) / 255;
|
|
86
|
+
const max = Math.max(r, g, b);
|
|
87
|
+
const min = Math.min(r, g, b);
|
|
88
|
+
const l = (max + min) / 2;
|
|
89
|
+
if (max !== min) {
|
|
90
|
+
const d = max - min;
|
|
91
|
+
s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
|
|
92
|
+
if (max === r)
|
|
93
|
+
h = (g - b) / d + (g < b ? 6 : 0);
|
|
94
|
+
else if (max === g)
|
|
95
|
+
h = (b - r) / d + 2;
|
|
96
|
+
else
|
|
97
|
+
h = (r - g) / d + 4;
|
|
98
|
+
h /= 6;
|
|
99
|
+
}
|
|
100
|
+
return {
|
|
101
|
+
hue: Math.round(h * 360),
|
|
102
|
+
saturation: Math.round(s * 100),
|
|
103
|
+
lightness: Math.round(l * 100),
|
|
104
|
+
};
|
|
100
105
|
}
|
|
101
|
-
|
|
102
|
-
hue: Math.round(hue * 360),
|
|
103
|
-
saturation: Math.round(saturation * 100),
|
|
104
|
-
lightness: Math.round(lightness * 100)
|
|
105
|
-
};
|
|
106
|
-
}
|
|
107
|
-
return result;
|
|
106
|
+
return false;
|
|
108
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* 16進数カラーコードをRGBオブジェクトに変換
|
|
110
|
+
*/
|
|
109
111
|
function HexToRGB(strRgb16) {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
red: Math.round(red),
|
|
121
|
-
green: Math.round(green),
|
|
122
|
-
blue: Math.round(blue)
|
|
123
|
-
};
|
|
124
|
-
}
|
|
125
|
-
return result;
|
|
112
|
+
const [rHex, gHex, bHex] = createRGB(strRgb16);
|
|
113
|
+
const hexPattern = /^[0-9a-f]{2}$/i;
|
|
114
|
+
if (hexPattern.test(rHex) && hexPattern.test(gHex) && hexPattern.test(bHex)) {
|
|
115
|
+
return {
|
|
116
|
+
red: parseInt(rHex, 16),
|
|
117
|
+
green: parseInt(gHex, 16),
|
|
118
|
+
blue: parseInt(bHex, 16),
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
return false;
|
|
126
122
|
}
|
|
127
123
|
|
|
128
124
|
export { HexToRGB, hslToRgb16, rgb16ToHsl };
|