@iyulab/components 0.2.1 → 0.2.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/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.2 (2026-02-09)
4
+
5
+ ### Features
6
+ - **UInput**: Added `min`, `max`, `step` properties for number/date/time input types (closes #1)
7
+
3
8
  ## 0.2.1 (2026-02-09)
4
9
 
5
10
  ### Documentation
@@ -54,6 +54,12 @@ export declare class UInput extends BaseElement {
54
54
  pattern?: string;
55
55
  /** 유효성 검사 실패 시 표시할 메시지 */
56
56
  validationMessage?: string;
57
+ /** 최솟값 (number, date, time 등) */
58
+ min?: number;
59
+ /** 최댓값 (number, date, time 등) */
60
+ max?: number;
61
+ /** 증감 단위 (number, date, time 등) */
62
+ step?: number;
57
63
  protected updated(changedProperties: PropertyValues): void;
58
64
  render(): import('lit-html').TemplateResult<1>;
59
65
  /** 입력 필드에 포커스를 설정합니다. */
@@ -112,6 +112,9 @@ class UInput extends BaseElement {
112
112
  autocomplete=${ifDefined(this.autocomplete)}
113
113
  placeholder=${ifDefined(this.placeholder)}
114
114
  pattern=${ifDefined(this.pattern)}
115
+ min=${ifDefined(this.min)}
116
+ max=${ifDefined(this.max)}
117
+ step=${ifDefined(this.step)}
115
118
  .value=${live(this.value)}
116
119
  @input=${this.handleInput}
117
120
  @change=${this.handleInputChange}
@@ -234,5 +237,14 @@ __decorateClass([
234
237
  __decorateClass([
235
238
  property({ type: String })
236
239
  ], UInput.prototype, "validationMessage");
240
+ __decorateClass([
241
+ property({ type: Number })
242
+ ], UInput.prototype, "min");
243
+ __decorateClass([
244
+ property({ type: Number })
245
+ ], UInput.prototype, "max");
246
+ __decorateClass([
247
+ property({ type: Number })
248
+ ], UInput.prototype, "step");
237
249
 
238
250
  export { UInput };
@@ -24,7 +24,6 @@ import * as handThumbsDown from '../assets/icons/hand-thumbs-down.svg.js';
24
24
  import * as handThumbsUpFill from '../assets/icons/hand-thumbs-up-fill.svg.js';
25
25
  import * as handThumbsUp from '../assets/icons/hand-thumbs-up.svg.js';
26
26
  import * as infoCircleFill from '../assets/icons/info-circle-fill.svg.js';
27
- import * as layoutSidebar from '../assets/icons/layout-sidebar.svg.js';
28
27
  import * as lightbulbFill from '../assets/icons/lightbulb-fill.svg.js';
29
28
  import * as lightbulbOff from '../assets/icons/lightbulb-off.svg.js';
30
29
  import * as lightbulb from '../assets/icons/lightbulb.svg.js';
@@ -48,7 +47,7 @@ function setDefaultBaseUrl(url) {
48
47
  }
49
48
  const defaultIconCache = /* @__PURE__ */ new Map();
50
49
  const internalIconBundle = new Map(
51
- Object.entries(/* #__PURE__ */ Object.assign({"../assets/icons/arrow-down.svg": arrowDown,"../assets/icons/arrow-repeat.svg": arrowRepeat,"../assets/icons/arrow-up.svg": arrowUp,"../assets/icons/ban.svg": ban,"../assets/icons/bell-fill.svg": bellFill,"../assets/icons/box-arrow-up-right.svg": boxArrowUpRight,"../assets/icons/check-circle-fill.svg": checkCircleFill,"../assets/icons/check-lg.svg": checkLg,"../assets/icons/chevron-down.svg": chevronDown,"../assets/icons/chevron-left.svg": chevronLeft,"../assets/icons/chevron-right.svg": chevronRight,"../assets/icons/chevron-up.svg": chevronUp,"../assets/icons/copy.svg": copy,"../assets/icons/dash-lg.svg": dashLg,"../assets/icons/exclamation-circle-fill.svg": exclamationCircleFill,"../assets/icons/exclamation-triangle-fill.svg": exclamationTriangleFill,"../assets/icons/eye-slash.svg": eyeSlash,"../assets/icons/eye.svg": eye,"../assets/icons/file-earmark.svg": fileEarmark,"../assets/icons/flag.svg": flag,"../assets/icons/globe.svg": globe,"../assets/icons/hand-thumbs-down-fill.svg": handThumbsDownFill,"../assets/icons/hand-thumbs-down.svg": handThumbsDown,"../assets/icons/hand-thumbs-up-fill.svg": handThumbsUpFill,"../assets/icons/hand-thumbs-up.svg": handThumbsUp,"../assets/icons/info-circle-fill.svg": infoCircleFill,"../assets/icons/layout-sidebar.svg": layoutSidebar,"../assets/icons/lightbulb-fill.svg": lightbulbFill,"../assets/icons/lightbulb-off.svg": lightbulbOff,"../assets/icons/lightbulb.svg": lightbulb,"../assets/icons/mic-fill.svg": micFill,"../assets/icons/mic-mute-fill.svg": micMuteFill,"../assets/icons/paperclip.svg": paperclip,"../assets/icons/pencil-square.svg": pencilSquare,"../assets/icons/plus-lg.svg": plusLg,"../assets/icons/search.svg": search,"../assets/icons/share.svg": share,"../assets/icons/stop-circle.svg": stopCircle,"../assets/icons/tools.svg": tools,"../assets/icons/x-lg.svg": xLg
50
+ Object.entries(/* #__PURE__ */ Object.assign({"../assets/icons/arrow-down.svg": arrowDown,"../assets/icons/arrow-repeat.svg": arrowRepeat,"../assets/icons/arrow-up.svg": arrowUp,"../assets/icons/ban.svg": ban,"../assets/icons/bell-fill.svg": bellFill,"../assets/icons/box-arrow-up-right.svg": boxArrowUpRight,"../assets/icons/check-circle-fill.svg": checkCircleFill,"../assets/icons/check-lg.svg": checkLg,"../assets/icons/chevron-down.svg": chevronDown,"../assets/icons/chevron-left.svg": chevronLeft,"../assets/icons/chevron-right.svg": chevronRight,"../assets/icons/chevron-up.svg": chevronUp,"../assets/icons/copy.svg": copy,"../assets/icons/dash-lg.svg": dashLg,"../assets/icons/exclamation-circle-fill.svg": exclamationCircleFill,"../assets/icons/exclamation-triangle-fill.svg": exclamationTriangleFill,"../assets/icons/eye-slash.svg": eyeSlash,"../assets/icons/eye.svg": eye,"../assets/icons/file-earmark.svg": fileEarmark,"../assets/icons/flag.svg": flag,"../assets/icons/globe.svg": globe,"../assets/icons/hand-thumbs-down-fill.svg": handThumbsDownFill,"../assets/icons/hand-thumbs-down.svg": handThumbsDown,"../assets/icons/hand-thumbs-up-fill.svg": handThumbsUpFill,"../assets/icons/hand-thumbs-up.svg": handThumbsUp,"../assets/icons/info-circle-fill.svg": infoCircleFill,"../assets/icons/lightbulb-fill.svg": lightbulbFill,"../assets/icons/lightbulb-off.svg": lightbulbOff,"../assets/icons/lightbulb.svg": lightbulb,"../assets/icons/mic-fill.svg": micFill,"../assets/icons/mic-mute-fill.svg": micMuteFill,"../assets/icons/paperclip.svg": paperclip,"../assets/icons/pencil-square.svg": pencilSquare,"../assets/icons/plus-lg.svg": plusLg,"../assets/icons/search.svg": search,"../assets/icons/share.svg": share,"../assets/icons/stop-circle.svg": stopCircle,"../assets/icons/tools.svg": tools,"../assets/icons/x-lg.svg": xLg
52
51
 
53
52
 
54
53
  })).map(([path, module]) => {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@iyulab/components",
3
3
  "description": "web-components library based on lit-element made by iyulab",
4
- "version": "0.2.1",
4
+ "version": "0.2.2",
5
5
  "keywords": [
6
6
  "iyulab",
7
7
  "components",
@@ -1,3 +0,0 @@
1
- const layoutSidebar = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\">\r\n <path d=\"M0 3a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2zm5-1v12h9a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zM4 2H2a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h2z\"/>\r\n</svg>";
2
-
3
- export { layoutSidebar as default };