cclkit4svelte 2.0.5 → 2.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Accordion.svelte +40 -29
- package/dist/Accordion.svelte.d.ts +31 -22
- package/dist/AccordionItem.svelte +120 -87
- package/dist/AccordionItem.svelte.d.ts +43 -34
- package/dist/Alert.svelte +111 -82
- package/dist/Alert.svelte.d.ts +38 -36
- package/dist/Badge.svelte +84 -0
- package/dist/Badge.svelte.d.ts +34 -0
- package/dist/BookCard.svelte +127 -88
- package/dist/BookCard.svelte.d.ts +47 -45
- package/dist/Breadcrumb.svelte +91 -0
- package/dist/Breadcrumb.svelte.d.ts +37 -0
- package/dist/Button.svelte +72 -35
- package/dist/Button.svelte.d.ts +33 -31
- package/dist/Card.svelte +110 -75
- package/dist/Card.svelte.d.ts +38 -36
- package/dist/Carousel.svelte +91 -66
- package/dist/Carousel.svelte.d.ts +26 -24
- package/dist/ChangeHistory.svelte +188 -150
- package/dist/ChangeHistory.svelte.d.ts +29 -27
- package/dist/Checkbox.svelte +120 -89
- package/dist/Checkbox.svelte.d.ts +41 -39
- package/dist/CommonHeader.svelte +51 -24
- package/dist/CommonHeader.svelte.d.ts +38 -36
- package/dist/DatePicker.svelte +239 -188
- package/dist/DatePicker.svelte.d.ts +40 -38
- package/dist/Dialog.svelte +224 -0
- package/dist/Dialog.svelte.d.ts +50 -0
- package/dist/Drawer.svelte +158 -0
- package/dist/Drawer.svelte.d.ts +40 -0
- package/dist/Footer.svelte +32 -16
- package/dist/Footer.svelte.d.ts +21 -19
- package/dist/FormGroup.svelte +67 -43
- package/dist/FormGroup.svelte.d.ts +46 -37
- package/dist/Header.svelte +108 -98
- package/dist/Header.svelte.d.ts +25 -23
- package/dist/Input.svelte +154 -99
- package/dist/Input.svelte.d.ts +62 -60
- package/dist/Pagination.svelte +257 -0
- package/dist/Pagination.svelte.d.ts +35 -0
- package/dist/ProgressBar.svelte +49 -44
- package/dist/ProgressBar.svelte.d.ts +25 -23
- package/dist/RadioButton.svelte +92 -62
- package/dist/RadioButton.svelte.d.ts +40 -38
- package/dist/Select.svelte +94 -53
- package/dist/Select.svelte.d.ts +49 -47
- package/dist/ServiceCard.svelte +71 -64
- package/dist/ServiceCard.svelte.d.ts +27 -25
- package/dist/Skeleton.svelte +96 -0
- package/dist/Skeleton.svelte.d.ts +24 -0
- package/dist/SlideMenu.svelte +157 -0
- package/dist/SlideMenu.svelte.d.ts +42 -0
- package/dist/Spinner.svelte +25 -23
- package/dist/Spinner.svelte.d.ts +20 -18
- package/dist/TabPanel.svelte +42 -21
- package/dist/TabPanel.svelte.d.ts +40 -31
- package/dist/Table.svelte +114 -73
- package/dist/Table.svelte.d.ts +33 -31
- package/dist/Tabs.svelte +78 -72
- package/dist/Tabs.svelte.d.ts +18 -16
- package/dist/Textarea.svelte +101 -52
- package/dist/Textarea.svelte.d.ts +57 -55
- package/dist/Thumbnail.svelte +33 -15
- package/dist/Thumbnail.svelte.d.ts +34 -32
- package/dist/Toaster.svelte +144 -0
- package/dist/Toaster.svelte.d.ts +26 -0
- package/dist/Toggle.svelte +85 -61
- package/dist/Toggle.svelte.d.ts +36 -34
- package/dist/Tooltip.svelte +126 -122
- package/dist/Tooltip.svelte.d.ts +30 -21
- package/dist/const/colorMap.d.ts +5 -0
- package/dist/const/colorMap.js +21 -0
- package/dist/const/variables.css +21 -21
- package/dist/index.d.ts +9 -0
- package/dist/index.js +8 -0
- package/dist/toast.d.ts +29 -0
- package/dist/toast.js +66 -0
- package/dist/types/breadcrumb.d.ts +4 -0
- package/dist/types/breadcrumb.js +1 -0
- package/dist/types/slide-menu.d.ts +5 -0
- package/dist/types/slide-menu.js +1 -0
- package/package.json +87 -89
package/dist/RadioButton.svelte
CHANGED
|
@@ -1,69 +1,99 @@
|
|
|
1
|
-
<script
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { CCLVividColor } from './const/config';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* ラジオボタンの選択値
|
|
6
|
+
* @type {any}
|
|
7
|
+
*/
|
|
8
|
+
export let value: any;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* どのラジオボタンが選択されているかを保持する変数
|
|
12
|
+
* @type {any}
|
|
13
|
+
*/
|
|
14
|
+
export let group: any;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* ラジオボタンのラベル
|
|
18
|
+
* @default ''
|
|
19
|
+
* @type string
|
|
20
|
+
*/
|
|
21
|
+
export let label: string = '';
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* ラジオボタンの色
|
|
25
|
+
* @default CCLVividColor.SODA_BLUE
|
|
26
|
+
* @type string
|
|
27
|
+
*/
|
|
28
|
+
export let color: string = CCLVividColor.SODA_BLUE;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* 非活性状態
|
|
32
|
+
* @default false
|
|
33
|
+
* @type boolean
|
|
34
|
+
*/
|
|
35
|
+
export let disabled: boolean = false;
|
|
36
|
+
|
|
37
|
+
let circleColor: 'white' = 'white';
|
|
8
38
|
</script>
|
|
9
39
|
|
|
10
40
|
<label class="radioWrapper" class:disabled>
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
41
|
+
<input type="radio" bind:group {value} {disabled} aria-label={label} />
|
|
42
|
+
<span class="customRadio" style="--bg-color: var({color});">
|
|
43
|
+
{#if group === value}
|
|
44
|
+
<span class="innerCircle" style="--circle-color: {circleColor};" />
|
|
45
|
+
{/if}
|
|
46
|
+
</span>
|
|
47
|
+
{#if label}
|
|
48
|
+
<span class="label">{label}</span>
|
|
49
|
+
{/if}
|
|
20
50
|
</label>
|
|
21
51
|
|
|
22
52
|
<style>
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
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
|
-
|
|
53
|
+
.radioWrapper {
|
|
54
|
+
display: flex;
|
|
55
|
+
align-items: center;
|
|
56
|
+
cursor: pointer;
|
|
57
|
+
margin-bottom: 8px;
|
|
58
|
+
position: relative;
|
|
59
|
+
}
|
|
60
|
+
.radioWrapper.disabled {
|
|
61
|
+
cursor: not-allowed;
|
|
62
|
+
opacity: 0.6;
|
|
63
|
+
}
|
|
64
|
+
.radioWrapper input[type='radio'] {
|
|
65
|
+
border: 0;
|
|
66
|
+
clip: rect(0 0 0 0);
|
|
67
|
+
clip-path: inset(50%);
|
|
68
|
+
height: 1px;
|
|
69
|
+
margin: -1px;
|
|
70
|
+
overflow: hidden;
|
|
71
|
+
padding: 0;
|
|
72
|
+
position: absolute;
|
|
73
|
+
white-space: nowrap;
|
|
74
|
+
width: 1px;
|
|
75
|
+
}
|
|
76
|
+
.customRadio {
|
|
77
|
+
width: 20px;
|
|
78
|
+
height: 20px;
|
|
79
|
+
border: 2px solid var(--bg-color);
|
|
80
|
+
border-radius: 50%;
|
|
81
|
+
display: flex;
|
|
82
|
+
justify-content: center;
|
|
83
|
+
align-items: center;
|
|
84
|
+
transition: background-color 0.2s;
|
|
85
|
+
}
|
|
86
|
+
.radioWrapper input[type='radio']:checked + .customRadio {
|
|
87
|
+
background-color: var(--bg-color);
|
|
88
|
+
}
|
|
89
|
+
.innerCircle {
|
|
90
|
+
width: 10px;
|
|
91
|
+
height: 10px;
|
|
92
|
+
background-color: var(--circle-color);
|
|
93
|
+
border-radius: 50%;
|
|
94
|
+
}
|
|
95
|
+
.label {
|
|
96
|
+
margin-left: 8px;
|
|
97
|
+
font-size: 16px;
|
|
98
|
+
}
|
|
69
99
|
</style>
|
|
@@ -1,40 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
*/ group: any;
|
|
12
|
-
/**
|
|
13
|
-
* ラジオボタンのラベル
|
|
14
|
-
* @default ''
|
|
15
|
-
* @type string
|
|
16
|
-
*/ label?: string;
|
|
17
|
-
/**
|
|
18
|
-
* ラジオボタンの色
|
|
19
|
-
* @default CCLVividColor.SODA_BLUE
|
|
20
|
-
* @type string
|
|
21
|
-
*/ color?: string;
|
|
22
|
-
/**
|
|
23
|
-
* 非活性状態
|
|
24
|
-
* @default false
|
|
25
|
-
* @type boolean
|
|
26
|
-
*/ disabled?: boolean;
|
|
1
|
+
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
2
|
+
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
3
|
+
$$bindings?: Bindings;
|
|
4
|
+
} & Exports;
|
|
5
|
+
(internal: unknown, props: Props & {
|
|
6
|
+
$$events?: Events;
|
|
7
|
+
$$slots?: Slots;
|
|
8
|
+
}): Exports & {
|
|
9
|
+
$set?: any;
|
|
10
|
+
$on?: any;
|
|
27
11
|
};
|
|
28
|
-
|
|
29
|
-
[evt: string]: CustomEvent<any>;
|
|
30
|
-
};
|
|
31
|
-
slots: {};
|
|
32
|
-
exports?: {} | undefined;
|
|
33
|
-
bindings?: string | undefined;
|
|
34
|
-
};
|
|
35
|
-
export type RadioButtonProps = typeof __propDef.props;
|
|
36
|
-
export type RadioButtonEvents = typeof __propDef.events;
|
|
37
|
-
export type RadioButtonSlots = typeof __propDef.slots;
|
|
38
|
-
export default class RadioButton extends SvelteComponent<RadioButtonProps, RadioButtonEvents, RadioButtonSlots> {
|
|
12
|
+
z_$$bindings?: Bindings;
|
|
39
13
|
}
|
|
40
|
-
|
|
14
|
+
declare const RadioButton: $$__sveltets_2_IsomorphicComponent<{
|
|
15
|
+
/**
|
|
16
|
+
* ラジオボタンの選択値
|
|
17
|
+
* @type {any}
|
|
18
|
+
*/ value: any;
|
|
19
|
+
/**
|
|
20
|
+
* どのラジオボタンが選択されているかを保持する変数
|
|
21
|
+
* @type {any}
|
|
22
|
+
*/ group: any;
|
|
23
|
+
/**
|
|
24
|
+
* ラジオボタンのラベル
|
|
25
|
+
* @default ''
|
|
26
|
+
* @type string
|
|
27
|
+
*/ label?: string;
|
|
28
|
+
/**
|
|
29
|
+
* ラジオボタンの色
|
|
30
|
+
* @default CCLVividColor.SODA_BLUE
|
|
31
|
+
* @type string
|
|
32
|
+
*/ color?: string;
|
|
33
|
+
/**
|
|
34
|
+
* 非活性状態
|
|
35
|
+
* @default false
|
|
36
|
+
* @type boolean
|
|
37
|
+
*/ disabled?: boolean;
|
|
38
|
+
}, {
|
|
39
|
+
[evt: string]: CustomEvent<any>;
|
|
40
|
+
}, {}, {}, string>;
|
|
41
|
+
type RadioButton = InstanceType<typeof RadioButton>;
|
|
42
|
+
export default RadioButton;
|
package/dist/Select.svelte
CHANGED
|
@@ -1,64 +1,105 @@
|
|
|
1
|
-
<script
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { CCLVividColor } from './const/config';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* オプションの型定義
|
|
6
|
+
*/
|
|
7
|
+
export type SelectOption = { value: string; label: string };
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* ラベルのテキスト
|
|
11
|
+
* @default ''
|
|
12
|
+
* @type string
|
|
13
|
+
*/
|
|
14
|
+
export let label: string = '';
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* 選択肢のリスト
|
|
18
|
+
* @type SelectOption[]
|
|
19
|
+
*/
|
|
20
|
+
export let options: SelectOption[] = [];
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* 選択された値
|
|
24
|
+
* @default ''
|
|
25
|
+
* @type string
|
|
26
|
+
*/
|
|
27
|
+
export let value: string = '';
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* 枠線の色
|
|
31
|
+
* @default --strawberry-pink
|
|
32
|
+
* @type string
|
|
33
|
+
*/
|
|
34
|
+
export let borderColor: string = CCLVividColor.STRAWBERRY_PINK;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* 非活性状態にするか
|
|
38
|
+
* @default false
|
|
39
|
+
* @type boolean
|
|
40
|
+
*/
|
|
41
|
+
export let disabled: boolean = false;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* コンポーネントのID
|
|
45
|
+
* @default 'ccl-select'
|
|
46
|
+
* @type string
|
|
47
|
+
*/
|
|
48
|
+
export let id: string = 'ccl-select';
|
|
8
49
|
</script>
|
|
9
50
|
|
|
10
51
|
<div class="select-wrapper">
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
52
|
+
{#if label}
|
|
53
|
+
<label for={id} class="select-label">{label}</label>
|
|
54
|
+
{/if}
|
|
55
|
+
<select
|
|
56
|
+
{id}
|
|
57
|
+
bind:value
|
|
58
|
+
{disabled}
|
|
59
|
+
class="select-field"
|
|
60
|
+
style="--border-color: var({borderColor})"
|
|
61
|
+
>
|
|
62
|
+
{#each options as option}
|
|
63
|
+
<option value={option.value}>{option.label}</option>
|
|
64
|
+
{/each}
|
|
65
|
+
</select>
|
|
25
66
|
</div>
|
|
26
67
|
|
|
27
68
|
<style>
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
69
|
+
.select-wrapper {
|
|
70
|
+
display: flex;
|
|
71
|
+
flex-direction: column;
|
|
72
|
+
gap: 8px;
|
|
73
|
+
}
|
|
33
74
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
75
|
+
.select-label {
|
|
76
|
+
font-size: 14px;
|
|
77
|
+
color: var(--wrap-grey);
|
|
78
|
+
}
|
|
38
79
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
80
|
+
.select-field {
|
|
81
|
+
padding: 10px 15px;
|
|
82
|
+
border-radius: 8px;
|
|
83
|
+
border: 2px solid var(--border-color);
|
|
84
|
+
font-size: 16px;
|
|
85
|
+
outline: none;
|
|
86
|
+
transition: border-color 0.2s;
|
|
87
|
+
background-color: white; /* 背景色を白に設定 */
|
|
88
|
+
appearance: none; /* デフォルトの矢印を非表示 */
|
|
89
|
+
background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M287%2069.4L146.2%20208.6%205.4%2069.4h281.6z%22%2F%3E%3C%2Fsvg%3E'); /* カスタム矢印 */
|
|
90
|
+
background-repeat: no-repeat;
|
|
91
|
+
background-position: right 10px center;
|
|
92
|
+
background-size: 12px;
|
|
93
|
+
cursor: pointer;
|
|
94
|
+
}
|
|
54
95
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
96
|
+
.select-field:focus {
|
|
97
|
+
border-color: var(--ccl-focus-color, var(--soda-blue)); /* フォーカス時の色を定義 */
|
|
98
|
+
}
|
|
58
99
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
100
|
+
.select-field:disabled {
|
|
101
|
+
background-color: var(--cloud-grey);
|
|
102
|
+
cursor: not-allowed;
|
|
103
|
+
border-color: var(--cloud-grey);
|
|
104
|
+
}
|
|
64
105
|
</style>
|
package/dist/Select.svelte.d.ts
CHANGED
|
@@ -1,49 +1,51 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
* @type SelectOption[]
|
|
12
|
-
*/ options?: {
|
|
13
|
-
value: string;
|
|
14
|
-
label: string;
|
|
15
|
-
}[];
|
|
16
|
-
/**
|
|
17
|
-
* 選択された値
|
|
18
|
-
* @default ''
|
|
19
|
-
* @type string
|
|
20
|
-
*/ value?: string;
|
|
21
|
-
/**
|
|
22
|
-
* 枠線の色
|
|
23
|
-
* @default --strawberry-pink
|
|
24
|
-
* @type string
|
|
25
|
-
*/ borderColor?: string;
|
|
26
|
-
/**
|
|
27
|
-
* 非活性状態にするか
|
|
28
|
-
* @default false
|
|
29
|
-
* @type boolean
|
|
30
|
-
*/ disabled?: boolean;
|
|
31
|
-
/**
|
|
32
|
-
* コンポーネントのID
|
|
33
|
-
* @default 'ccl-select'
|
|
34
|
-
* @type string
|
|
35
|
-
*/ id?: string;
|
|
1
|
+
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
2
|
+
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
3
|
+
$$bindings?: Bindings;
|
|
4
|
+
} & Exports;
|
|
5
|
+
(internal: unknown, props: Props & {
|
|
6
|
+
$$events?: Events;
|
|
7
|
+
$$slots?: Slots;
|
|
8
|
+
}): Exports & {
|
|
9
|
+
$set?: any;
|
|
10
|
+
$on?: any;
|
|
36
11
|
};
|
|
37
|
-
|
|
38
|
-
[evt: string]: CustomEvent<any>;
|
|
39
|
-
};
|
|
40
|
-
slots: {};
|
|
41
|
-
exports?: {} | undefined;
|
|
42
|
-
bindings?: string | undefined;
|
|
43
|
-
};
|
|
44
|
-
export type SelectProps = typeof __propDef.props;
|
|
45
|
-
export type SelectEvents = typeof __propDef.events;
|
|
46
|
-
export type SelectSlots = typeof __propDef.slots;
|
|
47
|
-
export default class Select extends SvelteComponent<SelectProps, SelectEvents, SelectSlots> {
|
|
12
|
+
z_$$bindings?: Bindings;
|
|
48
13
|
}
|
|
49
|
-
|
|
14
|
+
declare const Select: $$__sveltets_2_IsomorphicComponent<{
|
|
15
|
+
/**
|
|
16
|
+
* ラベルのテキスト
|
|
17
|
+
* @default ''
|
|
18
|
+
* @type string
|
|
19
|
+
*/ label?: string;
|
|
20
|
+
/**
|
|
21
|
+
* 選択肢のリスト
|
|
22
|
+
* @type SelectOption[]
|
|
23
|
+
*/ options?: {
|
|
24
|
+
value: string;
|
|
25
|
+
label: string;
|
|
26
|
+
}[];
|
|
27
|
+
/**
|
|
28
|
+
* 選択された値
|
|
29
|
+
* @default ''
|
|
30
|
+
* @type string
|
|
31
|
+
*/ value?: string;
|
|
32
|
+
/**
|
|
33
|
+
* 枠線の色
|
|
34
|
+
* @default --strawberry-pink
|
|
35
|
+
* @type string
|
|
36
|
+
*/ borderColor?: string;
|
|
37
|
+
/**
|
|
38
|
+
* 非活性状態にするか
|
|
39
|
+
* @default false
|
|
40
|
+
* @type boolean
|
|
41
|
+
*/ disabled?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* コンポーネントのID
|
|
44
|
+
* @default 'ccl-select'
|
|
45
|
+
* @type string
|
|
46
|
+
*/ id?: string;
|
|
47
|
+
}, {
|
|
48
|
+
[evt: string]: CustomEvent<any>;
|
|
49
|
+
}, {}, {}, string>;
|
|
50
|
+
type Select = InstanceType<typeof Select>;
|
|
51
|
+
export default Select;
|
package/dist/ServiceCard.svelte
CHANGED
|
@@ -1,78 +1,85 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
export let
|
|
3
|
-
export let
|
|
4
|
-
export let
|
|
5
|
-
export let
|
|
6
|
-
export let
|
|
7
|
-
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
export let serviceName: string;
|
|
3
|
+
export let description: string;
|
|
4
|
+
export let imageUrl: string;
|
|
5
|
+
export let altText: string;
|
|
6
|
+
export let linkUrl: string | undefined = undefined;
|
|
7
|
+
/**
|
|
8
|
+
* 枠線の色
|
|
9
|
+
* @default --strawberry-pink
|
|
10
|
+
* @type string
|
|
11
|
+
*/
|
|
12
|
+
export let borderColor: string = '--strawberry-pink';
|
|
13
|
+
|
|
14
|
+
const Tag = linkUrl ? 'a' : 'div';
|
|
8
15
|
</script>
|
|
9
16
|
|
|
10
17
|
<svelte:element
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
18
|
+
this={Tag}
|
|
19
|
+
href={linkUrl}
|
|
20
|
+
class="service-card"
|
|
21
|
+
target={linkUrl ? '_blank' : undefined}
|
|
22
|
+
rel={linkUrl ? 'noopener noreferrer' : undefined}
|
|
23
|
+
style="--card-border-color: var({borderColor});"
|
|
17
24
|
>
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
+
<div class="image-container">
|
|
26
|
+
<img src={imageUrl} alt={altText} class="service-image" />
|
|
27
|
+
</div>
|
|
28
|
+
<div class="text-container">
|
|
29
|
+
<h3 class="service-name">{serviceName}</h3>
|
|
30
|
+
<p class="service-description">{description}</p>
|
|
31
|
+
</div>
|
|
25
32
|
</svelte:element>
|
|
26
33
|
|
|
27
34
|
<style>
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
35
|
+
.service-card {
|
|
36
|
+
display: flex;
|
|
37
|
+
align-items: center;
|
|
38
|
+
background-color: white;
|
|
39
|
+
border: 1px solid var(--card-border-color);
|
|
40
|
+
border-radius: 8px;
|
|
41
|
+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
|
|
42
|
+
padding: 16px;
|
|
43
|
+
margin: 16px;
|
|
44
|
+
max-width: 500px;
|
|
45
|
+
text-decoration: none;
|
|
46
|
+
color: inherit;
|
|
47
|
+
transition: all 0.2s ease-in-out;
|
|
48
|
+
}
|
|
42
49
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
50
|
+
.service-card:hover {
|
|
51
|
+
transform: translateY(-4px);
|
|
52
|
+
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
|
|
53
|
+
}
|
|
47
54
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
55
|
+
.image-container {
|
|
56
|
+
flex-shrink: 0;
|
|
57
|
+
width: 120px;
|
|
58
|
+
height: 120px;
|
|
59
|
+
margin-right: 16px;
|
|
60
|
+
}
|
|
54
61
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
62
|
+
.service-image {
|
|
63
|
+
width: 100%;
|
|
64
|
+
height: 100%;
|
|
65
|
+
object-fit: cover;
|
|
66
|
+
border-radius: 4px;
|
|
67
|
+
}
|
|
61
68
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
69
|
+
.text-container {
|
|
70
|
+
flex-grow: 1;
|
|
71
|
+
}
|
|
65
72
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
73
|
+
.service-name {
|
|
74
|
+
font-size: 1.25rem;
|
|
75
|
+
font-weight: bold;
|
|
76
|
+
color: var(--wrap-grey);
|
|
77
|
+
margin: 0 0 8px 0;
|
|
78
|
+
}
|
|
72
79
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
80
|
+
.service-description {
|
|
81
|
+
font-size: 1rem;
|
|
82
|
+
color: black;
|
|
83
|
+
margin: 0;
|
|
84
|
+
}
|
|
78
85
|
</style>
|