cclkit4svelte 1.2.7 → 2.0.1

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.
@@ -0,0 +1,76 @@
1
+ <script>import "./const/variables.css";
2
+ import { CCLVividColor } from "./const/config";
3
+ export let checked = false;
4
+ export let color = CCLVividColor.SODA_BLUE;
5
+ export let disabled = false;
6
+ export let onChange = () => {
7
+ };
8
+ function handleChange(event) {
9
+ if (disabled) {
10
+ return;
11
+ }
12
+ const target = event.target;
13
+ checked = target.checked;
14
+ onChange();
15
+ }
16
+ </script>
17
+
18
+ <label class="switchWrapper" class:disabled={disabled}>
19
+ <input type="checkbox" {checked} on:change={handleChange} {disabled} />
20
+ <span class="slider" style="--bg-color: var({color});" />
21
+ </label>
22
+
23
+ <style>
24
+ .switchWrapper {
25
+ position: relative;
26
+ display: inline-block;
27
+ width: 50px;
28
+ height: 28px;
29
+ cursor: pointer;
30
+ }
31
+ .switchWrapper.disabled {
32
+ cursor: not-allowed;
33
+ opacity: 0.6;
34
+ }
35
+
36
+ .switchWrapper input {
37
+ opacity: 0;
38
+ width: 0;
39
+ height: 0;
40
+ }
41
+
42
+ .slider {
43
+ position: absolute;
44
+ top: 0;
45
+ left: 0;
46
+ right: 0;
47
+ bottom: 0;
48
+ background-color: #ccc;
49
+ transition: 0.4s;
50
+ border-radius: 28px;
51
+ }
52
+
53
+ .slider:before {
54
+ position: absolute;
55
+ content: '';
56
+ height: 20px;
57
+ width: 20px;
58
+ left: 4px;
59
+ bottom: 4px;
60
+ background-color: white;
61
+ transition: 0.4s;
62
+ border-radius: 50%;
63
+ }
64
+
65
+ input:checked + .slider {
66
+ background-color: var(--bg-color);
67
+ }
68
+
69
+ input:focus + .slider {
70
+ box-shadow: 0 0 1px var(--bg-color);
71
+ }
72
+
73
+ input:checked + .slider:before {
74
+ transform: translateX(22px);
75
+ }
76
+ </style>
@@ -0,0 +1,35 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import './const/variables.css';
3
+ declare const __propDef: {
4
+ props: {
5
+ /**
6
+ * トグルスイッチの状態
7
+ * @default false
8
+ * @type boolean
9
+ */ checked?: boolean;
10
+ /**
11
+ * トグルスイッチの色
12
+ * @default CCLVividColor.SODA_BLUE
13
+ * @type string
14
+ */ color?: string;
15
+ /**
16
+ * 非活性状態
17
+ * @default false
18
+ * @type boolean
19
+ */ disabled?: boolean;
20
+ /**
21
+ * 状態が変更されたときのイベントハンドラ
22
+ * @type {() => void}
23
+ */ onChange?: () => void;
24
+ };
25
+ events: {
26
+ [evt: string]: CustomEvent<any>;
27
+ };
28
+ slots: {};
29
+ };
30
+ export type ToggleProps = typeof __propDef.props;
31
+ export type ToggleEvents = typeof __propDef.events;
32
+ export type ToggleSlots = typeof __propDef.slots;
33
+ export default class Toggle extends SvelteComponentTyped<ToggleProps, ToggleEvents, ToggleSlots> {
34
+ }
35
+ export {};
@@ -0,0 +1,130 @@
1
+ <script>import { CCLVividColor } from "./const/config";
2
+ export let text;
3
+ export let position = "top";
4
+ export let disabled = false;
5
+ export let backgroundColor = CCLVividColor.WRAP_GREY;
6
+ const tooltipId = `tooltip-${Math.random().toString(36).substr(2, 9)}`;
7
+ </script>
8
+
9
+ <div class="tooltip-trigger" data-testid="tooltip-trigger" tabindex="0" aria-describedby={!disabled ? tooltipId : undefined}>
10
+ <slot />
11
+ <span
12
+ {...{id: tooltipId}}
13
+ style:--tooltip-background-color={backgroundColor.startsWith('--') ? `var(${backgroundColor})` : backgroundColor}
14
+ class="tooltip-content"
15
+ data-testid="tooltip-content"
16
+ class:disabled
17
+ class:top={position === 'top'}
18
+ class:bottom={position === 'bottom'}
19
+ class:left={position === 'left'}
20
+ class:right={position === 'right'}
21
+ role="tooltip"
22
+ >
23
+ {text}
24
+ </span>
25
+ </div>
26
+
27
+ <style>
28
+ .tooltip-trigger {
29
+ position: relative;
30
+ display: inline-block;
31
+ cursor: pointer;
32
+ }
33
+
34
+ .tooltip-content {
35
+ position: absolute;
36
+ z-index: 10;
37
+ background-color: var(--tooltip-background-color);
38
+ color: white;
39
+ padding: 0.5em 1em;
40
+ border-radius: 4px;
41
+ font-size: 0.875rem;
42
+ line-height: 1.4;
43
+ white-space: nowrap;
44
+ /* デフォルトは非表示 */
45
+ visibility: hidden;
46
+ opacity: 0;
47
+ transition: opacity 0.2s, visibility 0.2s;
48
+ }
49
+
50
+ /* disabledの場合は完全に非表示 */
51
+ .tooltip-content.disabled {
52
+ display: none;
53
+ }
54
+
55
+ /* ホバーまたはフォーカスで表示 */
56
+ .tooltip-trigger:hover .tooltip-content,
57
+ .tooltip-trigger:focus .tooltip-content {
58
+ visibility: visible;
59
+ opacity: 1;
60
+ }
61
+
62
+ /* 吹き出しの矢印 */
63
+ .tooltip-content::after {
64
+ content: '';
65
+ position: absolute;
66
+ border-style: solid;
67
+ }
68
+
69
+ /* --- ポジションごとのスタイル --- */
70
+
71
+ /* 上に表示 */
72
+ .tooltip-content.top {
73
+ bottom: 100%;
74
+ left: 50%;
75
+ transform: translateX(-50%);
76
+ margin-bottom: 8px;
77
+ }
78
+ .tooltip-content.top::after {
79
+ top: 100%;
80
+ left: 50%;
81
+ transform: translateX(-50%);
82
+ border-width: 5px;
83
+ border-color: var(--tooltip-background-color) transparent transparent transparent;
84
+ }
85
+
86
+ /* 下に表示 */
87
+ .tooltip-content.bottom {
88
+ top: 100%;
89
+ left: 50%;
90
+ transform: translateX(-50%);
91
+ margin-top: 8px;
92
+ }
93
+ .tooltip-content.bottom::after {
94
+ bottom: 100%;
95
+ left: 50%;
96
+ transform: translateX(-50%);
97
+ border-width: 5px;
98
+ border-color: transparent transparent var(--tooltip-background-color) transparent;
99
+ }
100
+
101
+ /* 左に表示 */
102
+ .tooltip-content.left {
103
+ right: 100%;
104
+ top: 50%;
105
+ transform: translateY(-50%);
106
+ margin-right: 8px;
107
+ }
108
+ .tooltip-content.left::after {
109
+ left: 100%;
110
+ top: 50%;
111
+ transform: translateY(-50%);
112
+ border-width: 5px;
113
+ border-color: transparent transparent transparent var(--tooltip-background-color);
114
+ }
115
+
116
+ /* 右に表示 */
117
+ .tooltip-content.right {
118
+ left: 100%;
119
+ top: 50%;
120
+ transform: translateY(-50%);
121
+ margin-left: 8px;
122
+ }
123
+ .tooltip-content.right::after {
124
+ right: 100%;
125
+ top: 50%;
126
+ transform: translateY(-50%);
127
+ border-width: 5px;
128
+ border-color: transparent var(--tooltip-background-color) transparent transparent;
129
+ }
130
+ </style>
@@ -0,0 +1,21 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ text: string;
5
+ position?: "top" | "bottom" | "left" | "right";
6
+ disabled?: boolean;
7
+ backgroundColor?: string;
8
+ };
9
+ events: {
10
+ [evt: string]: CustomEvent<any>;
11
+ };
12
+ slots: {
13
+ default: {};
14
+ };
15
+ };
16
+ export type TooltipProps = typeof __propDef.props;
17
+ export type TooltipEvents = typeof __propDef.events;
18
+ export type TooltipSlots = typeof __propDef.slots;
19
+ export default class Tooltip extends SvelteComponentTyped<TooltipProps, TooltipEvents, TooltipSlots> {
20
+ }
21
+ export {};
@@ -7,13 +7,18 @@ declare const CCLVividColor: {
7
7
  WRAP_GREY: string;
8
8
  };
9
9
  declare const CCLPastelColor: {
10
- PEACH_PINK: string;
11
- LEMON_YELLOW: string;
12
- SUGAR_BLUE: string;
13
- MATCHA_GREEN: string;
14
- AKEBI_PURPLE: string;
15
- CLOUD_GREY: string;
10
+ readonly PEACH_PINK: string;
11
+ readonly LEMON_YELLOW: string;
12
+ readonly SUGAR_BLUE: string;
13
+ readonly MATCHA_GREEN: string;
14
+ readonly AKEBI_PURPLE: string;
15
+ readonly CLOUD_GREY: string;
16
16
  };
17
+ export declare enum ProgressBarHeight {
18
+ NARROW = "5px",
19
+ DEFAULT = "10px",
20
+ WIDE = "20px"
21
+ }
17
22
  declare const HeaderHeight: {
18
23
  WIDE: string;
19
24
  NORMAL: string;
@@ -1,4 +1,15 @@
1
- const CCLVividColor = {
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var CCLVividColor = {
2
13
  STRAWBERRY_PINK: '--strawberry-pink',
3
14
  PINEAPPLE_YELLOW: '--pineapple-yellow',
4
15
  SODA_BLUE: '--soda-blue',
@@ -6,7 +17,7 @@ const CCLVividColor = {
6
17
  GRAPE_PURPLE: '--grape-purple',
7
18
  WRAP_GREY: '--wrap-grey'
8
19
  };
9
- const CCLPastelColor = {
20
+ var CCLPastelColorBase = {
10
21
  PEACH_PINK: '--peach-pink',
11
22
  LEMON_YELLOW: '--lemon-yellow',
12
23
  SUGAR_BLUE: '--sugar-blue',
@@ -14,7 +25,14 @@ const CCLPastelColor = {
14
25
  AKEBI_PURPLE: '--akebi-purple',
15
26
  CLOUD_GREY: '--cloud-grey'
16
27
  };
17
- const HeaderHeight = {
28
+ var CCLPastelColor = __assign({}, CCLPastelColorBase);
29
+ export var ProgressBarHeight;
30
+ (function (ProgressBarHeight) {
31
+ ProgressBarHeight["NARROW"] = "5px";
32
+ ProgressBarHeight["DEFAULT"] = "10px";
33
+ ProgressBarHeight["WIDE"] = "20px";
34
+ })(ProgressBarHeight || (ProgressBarHeight = {}));
35
+ var HeaderHeight = {
18
36
  WIDE: '--hd-wide',
19
37
  NORMAL: '--hd-normal',
20
38
  NALLOW: '--hd-nallow'
package/dist/index.d.ts CHANGED
@@ -7,4 +7,16 @@ export { default as Card } from './Card.svelte';
7
7
  export { default as Table } from './Table.svelte';
8
8
  export { default as Carousel } from './Carousel.svelte';
9
9
  export { default as CommonHeader } from './CommonHeader.svelte';
10
+ export { default as Checkbox } from './Checkbox.svelte';
11
+ export { default as RadioButton } from './RadioButton.svelte';
12
+ export { default as Toggle } from './Toggle.svelte';
13
+ export { default as FormGroup } from './FormGroup.svelte';
14
+ export { default as DatePicker } from './DatePicker.svelte';
10
15
  export { CCLVividColor, CCLPastelColor, HeaderHeight } from './const/config';
16
+ export { default as Spinner } from './Spinner.svelte';
17
+ export { default as ProgressBar } from './ProgressBar.svelte';
18
+ export { default as Textarea } from './Textarea.svelte';
19
+ export { default as Alert } from './Alert.svelte';
20
+ export { default as Select } from './Select.svelte';
21
+ export { default as ToolTip } from './Tooltip.svelte';
22
+ export { default as Input } from './Input.svelte';
package/dist/index.js CHANGED
@@ -8,4 +8,16 @@ export { default as Card } from './Card.svelte';
8
8
  export { default as Table } from './Table.svelte';
9
9
  export { default as Carousel } from './Carousel.svelte';
10
10
  export { default as CommonHeader } from './CommonHeader.svelte';
11
+ export { default as Checkbox } from './Checkbox.svelte';
12
+ export { default as RadioButton } from './RadioButton.svelte';
13
+ export { default as Toggle } from './Toggle.svelte';
14
+ export { default as FormGroup } from './FormGroup.svelte';
15
+ export { default as DatePicker } from './DatePicker.svelte';
11
16
  export { CCLVividColor, CCLPastelColor, HeaderHeight } from './const/config';
17
+ export { default as Spinner } from './Spinner.svelte';
18
+ export { default as ProgressBar } from './ProgressBar.svelte';
19
+ export { default as Textarea } from './Textarea.svelte';
20
+ export { default as Alert } from './Alert.svelte';
21
+ export { default as Select } from './Select.svelte';
22
+ export { default as ToolTip } from './Tooltip.svelte';
23
+ export { default as Input } from './Input.svelte';
@@ -1,5 +1,5 @@
1
1
  import { DateTime } from 'luxon';
2
- const getYear = () => {
2
+ var getYear = function () {
3
3
  return DateTime.now().year;
4
4
  };
5
5
  export { getYear };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cclkit4svelte",
3
- "version": "1.2.7",
3
+ "version": "2.0.1",
4
4
  "author": "reiji1020 <sk@reiji1020.info>",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -53,9 +53,10 @@
53
53
  "@storybook/sveltekit": "^8.5.8",
54
54
  "@storybook/test": "^8.5.8",
55
55
  "@storybook/test-runner": "^0.17.0",
56
- "@sveltejs/adapter-auto": "^2.1.1",
57
- "@sveltejs/kit": "^1.30.4",
58
- "@sveltejs/package": "^2.3.5",
56
+ "@sveltejs/adapter-auto": "^3.0.0",
57
+ "@sveltejs/kit": "^2.0.0",
58
+ "@sveltejs/package": "^2.3.0",
59
+ "@sveltejs/vite-plugin-svelte": "^3.0.0",
59
60
  "@types/luxon": "^3.4.2",
60
61
  "@typescript-eslint/eslint-plugin": "^6.21.0",
61
62
  "@typescript-eslint/parser": "^6.21.0",
@@ -70,12 +71,12 @@
70
71
  "react-dom": "^18.3.1",
71
72
  "semantic-release": "^23.1.1",
72
73
  "storybook": "^8.5.8",
73
- "svelte": "^4.2.19",
74
+ "svelte": "^4.2.7",
74
75
  "svelte-check": "^3.8.6",
75
76
  "svelte2tsx": "^0.6.27",
76
77
  "tslib": "^2.7.0",
77
- "typescript": "^5.6.2",
78
- "vite": "^4.5.5"
78
+ "typescript": "^5.0.0",
79
+ "vite": "^5.0.0"
79
80
  },
80
81
  "volta": {
81
82
  "node": "20.11.1",