@daikin-oss/design-system-web-components 2.1.0-next.2 → 2.1.0-next.3

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,11 @@
1
1
  # @daikin-oss/design-system-web-components
2
2
 
3
+ ## 2.1.0-next.3
4
+
5
+ ### Patch Changes
6
+
7
+ - [#535](https://github.com/dsv-rp/DDS/pull/535) [`4d21235`](https://github.com/dsv-rp/DDS/commit/4d2123538bdc74be6594bdfbe8cd9eb13e2a2ee8) Thanks [@rinjInTokyo](https://github.com/rinjInTokyo)! - Chore: Fixed an issue where the time picker could not be opened in the next version.
8
+
3
9
  ## 2.1.0-next.2
4
10
 
5
11
  ### Minor Changes
@@ -22339,34 +22339,23 @@
22339
22339
  },
22340
22340
  {
22341
22341
  "kind": "javascript-module",
22342
- "path": "dist/es/components/text-field/daikin-text-field.js",
22342
+ "path": "dist/es/components/text-masked-field/daikin-text-masked-field.js",
22343
22343
  "declarations": [
22344
22344
  {
22345
22345
  "kind": "class",
22346
- "description": "The text field component is a UI element that allows users to input single-line text data.\nIt functions similarly to the HTML `<input type=\"text\">` tag, providing a simple and efficient way for users to enter and edit short pieces of texts, such as names, email addresses, or search queries.\nCan be used within `daikin-input-group` component.\n\nHierarchies:\n- `daikin-text-field` (can be used solely)\n- `daikin-input-group` > `daikin-text-field`",
22347
- "name": "DaikinTextField",
22346
+ "description": "The text masked field component is a UI element that allows users to input single-line text data with input masking support.\nIt functions similarly to the HTML `<input type=\"text\">` tag, providing a simple and efficient way for users to enter and edit short pieces of texts with masking functionality using IMask.js.\nCan be used within `daikin-input-group` component.\n\nHierarchies:\n- `daikin-text-masked-field` (can be used solely)\n- `daikin-input-group` > `daikin-text-masked-field`",
22347
+ "name": "DaikinTextMaskedField",
22348
22348
  "slots": [
22349
22349
  {
22350
- "description": "Specify the icon you want to use on the left. You can also use something other than `daikin-icon`. Available only if the type is one of: - `\"text\"` - `\"number\"` - `\"password\"` - `\"email\"` - `\"tel\"`",
22350
+ "description": "Specify the icon you want to use on the left. You can also use something other than `daikin-icon`.",
22351
22351
  "name": "left-icon"
22352
22352
  },
22353
22353
  {
22354
- "description": "Specify the icon you want to use on the right. You can also use something other than `daikin-icon`. Available only if the type is one of: - `\"text\"` - `\"email\"` - `\"tel\"`",
22354
+ "description": "Specify the icon you want to use on the right. You can also use something other than `daikin-icon`.",
22355
22355
  "name": "right-icon"
22356
22356
  }
22357
22357
  ],
22358
22358
  "members": [
22359
- {
22360
- "kind": "field",
22361
- "name": "type",
22362
- "type": {
22363
- "text": "\"text\" | \"number\" | \"password\" | \"email\" | \"tel\" | \"search\""
22364
- },
22365
- "description": "Type of field.\n\n- `\"text\"`: Basic text input with optional left and right icon slots.\n- `\"number\"`: Numeric input with increment/decrement buttons, arrow key support, and optional left icon slot.\n- `\"password\"`: Password input with show/hide toggle button to control mask of password and optional left icon slot.\n- `\"email\"`: Email input with optional left and right icon slots.\n- `\"tel\"`: Telephone input with optional left and right icon slots.\n- `\"search\"`: Search input with built-in search icon and clear button when value is present.",
22366
- "default": "\"text\"",
22367
- "attribute": "type",
22368
- "reflects": true
22369
- },
22370
22359
  {
22371
22360
  "kind": "field",
22372
22361
  "name": "placeholder",
@@ -22384,7 +22373,7 @@
22384
22373
  "text": "boolean"
22385
22374
  },
22386
22375
  "default": "false",
22387
- "description": "Whether the text field is readonly.",
22376
+ "description": "Whether the text masked field is readonly.",
22388
22377
  "attribute": "readonly",
22389
22378
  "reflects": true
22390
22379
  },
@@ -22395,7 +22384,7 @@
22395
22384
  "text": "boolean"
22396
22385
  },
22397
22386
  "default": "false",
22398
- "description": "Whether the text field is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
22387
+ "description": "Whether the text masked field is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
22399
22388
  "attribute": "disabled",
22400
22389
  "reflects": true
22401
22390
  },
@@ -22406,7 +22395,7 @@
22406
22395
  "text": "boolean"
22407
22396
  },
22408
22397
  "default": "false",
22409
- "description": "Whether the text field is required.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
22398
+ "description": "Whether the text masked field is required.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
22410
22399
  "attribute": "required",
22411
22400
  "reflects": true
22412
22401
  },
@@ -22445,58 +22434,23 @@
22445
22434
  },
22446
22435
  {
22447
22436
  "kind": "field",
22448
- "name": "step",
22449
- "type": {
22450
- "text": "string | null"
22451
- },
22452
- "default": "null",
22453
- "description": "Interval between values. This is valid when `type=\"number\"`.",
22454
- "attribute": "step",
22455
- "reflects": true
22456
- },
22457
- {
22458
- "kind": "field",
22459
- "name": "stepMode",
22460
- "type": {
22461
- "text": "\"free\" | \"snap\""
22462
- },
22463
- "default": "\"free\"",
22464
- "description": "When `type=\"number\"`, whether to allow free input or snap to step boundaries.\n- `\"free\"`: Do not snap to step boundaries; increment/decrement relative to the current value.\n- `\"snap\"`: If the current value is off a step boundary, snap to the next/previous step boundary in the given direction (and finish without applying an extra step).\nNote that step boundaries are aligned to the `min` value if specified; otherwise, they are aligned to `0`. For example, with `step=\"3\"`, boundaries are `..., -3, 0, 3, 6, ...`. If `min=\"-4\"` is also set, the boundaries become `-4, -1, 2, 5, ...`.",
22465
- "attribute": "step-mode",
22466
- "reflects": true
22467
- },
22468
- {
22469
- "kind": "field",
22470
- "name": "min",
22471
- "type": {
22472
- "text": "string | null"
22473
- },
22474
- "default": "null",
22475
- "description": "The minimum value. This is valid when `type=\"number\"`.",
22476
- "attribute": "min",
22477
- "reflects": true
22478
- },
22479
- {
22480
- "kind": "field",
22481
- "name": "max",
22437
+ "name": "pattern",
22482
22438
  "type": {
22483
22439
  "text": "string | null"
22484
22440
  },
22485
22441
  "default": "null",
22486
- "description": "The maximum value. This is valid when `type=\"number\"`.",
22487
- "attribute": "max",
22442
+ "description": "The pattern of value.",
22443
+ "attribute": "pattern",
22488
22444
  "reflects": true
22489
22445
  },
22490
22446
  {
22491
22447
  "kind": "field",
22492
- "name": "pattern",
22448
+ "name": "mask",
22493
22449
  "type": {
22494
- "text": "string | null"
22450
+ "text": "string | FactoryOpts | null"
22495
22451
  },
22496
22452
  "default": "null",
22497
- "description": "The pattern of value.",
22498
- "attribute": "pattern",
22499
- "reflects": true
22453
+ "description": "Input mask configuration. When provided as a string, it will be used as `{ mask: string, lazy: false }`.\nWhen provided as an object, it will be passed directly to IMask.\n\nPattern symbols:\n- `0` - any digit\n- `a` - any letter\n- `*` - any char\n- `[]` - make input optional\n- `{}` - include fixed part in unmasked value\n- `` ` `` - prevent symbols shift back\n- Other chars are treated as fixed\n- Use `\\\\` to escape definition characters (e.g., `\\\\0`)\n\nExamples:\n- `\"00/00/0000\"` - date format (MM/DD/YYYY)\n- `\"{#}000[aaa]/NIC-\\`*[**]\"` - complex pattern with optional parts\n\nFor more details, see: https://imask.js.org/guide.html#masked-pattern"
22500
22454
  },
22501
22455
  {
22502
22456
  "kind": "field",
@@ -22510,14 +22464,12 @@
22510
22464
  },
22511
22465
  {
22512
22466
  "kind": "field",
22513
- "name": "showPassword",
22467
+ "name": "_unmaskedValue",
22514
22468
  "type": {
22515
- "text": "boolean"
22469
+ "text": "string"
22516
22470
  },
22517
- "default": "false",
22518
- "description": "When `type=\"password\"`, whether to display the password with a black dot or as text.",
22519
- "attribute": "show-password",
22520
- "reflects": true
22471
+ "privacy": "private",
22472
+ "default": "\"\""
22521
22473
  },
22522
22474
  {
22523
22475
  "kind": "field",
@@ -22550,31 +22502,44 @@
22550
22502
  {
22551
22503
  "kind": "field",
22552
22504
  "name": "_inputRef",
22505
+ "privacy": "private"
22506
+ },
22507
+ {
22508
+ "kind": "field",
22509
+ "name": "_maskInstance",
22553
22510
  "type": {
22554
- "text": "Ref<HTMLInputElement>"
22511
+ "text": "InputMask<object> | null"
22555
22512
  },
22556
22513
  "privacy": "private",
22557
- "readonly": true
22514
+ "default": "null"
22558
22515
  },
22559
22516
  {
22560
22517
  "kind": "method",
22561
- "name": "focus",
22518
+ "name": "_initializeMask",
22519
+ "privacy": "private",
22562
22520
  "return": {
22563
22521
  "type": {
22564
22522
  "text": "void"
22565
22523
  }
22566
- },
22567
- "parameters": [
22568
- {
22569
- "name": "options",
22570
- "optional": true,
22571
- "type": {
22572
- "text": "FocusOptions"
22573
- },
22574
- "description": "focus options"
22524
+ }
22525
+ },
22526
+ {
22527
+ "kind": "method",
22528
+ "name": "_destroyMask",
22529
+ "privacy": "private",
22530
+ "return": {
22531
+ "type": {
22532
+ "text": "void"
22575
22533
  }
22576
- ],
22577
- "description": "Focuses on the inner input."
22534
+ }
22535
+ },
22536
+ {
22537
+ "kind": "field",
22538
+ "name": "unmaskedValue",
22539
+ "type": {
22540
+ "text": "string"
22541
+ },
22542
+ "description": "The unmasked value of the input."
22578
22543
  },
22579
22544
  {
22580
22545
  "kind": "method",
@@ -22622,36 +22587,7 @@
22622
22587
  },
22623
22588
  {
22624
22589
  "kind": "method",
22625
- "name": "_handleClearClick",
22626
- "privacy": "private",
22627
- "return": {
22628
- "type": {
22629
- "text": "void"
22630
- }
22631
- }
22632
- },
22633
- {
22634
- "kind": "method",
22635
- "name": "_handleKeyDown",
22636
- "privacy": "private",
22637
- "return": {
22638
- "type": {
22639
- "text": "void"
22640
- }
22641
- },
22642
- "parameters": [
22643
- {
22644
- "name": "event",
22645
- "type": {
22646
- "text": "KeyboardEvent"
22647
- }
22648
- }
22649
- ]
22650
- },
22651
- {
22652
- "kind": "method",
22653
- "name": "_updateNumberValue",
22654
- "privacy": "private",
22590
+ "name": "focus",
22655
22591
  "return": {
22656
22592
  "type": {
22657
22593
  "text": "void"
@@ -22659,12 +22595,15 @@
22659
22595
  },
22660
22596
  "parameters": [
22661
22597
  {
22662
- "name": "sign",
22598
+ "name": "options",
22599
+ "optional": true,
22663
22600
  "type": {
22664
- "text": "1 | -1"
22665
- }
22601
+ "text": "FocusOptions"
22602
+ },
22603
+ "description": "focus options"
22666
22604
  }
22667
- ]
22605
+ ],
22606
+ "description": "Focuses on the inner input."
22668
22607
  },
22669
22608
  {
22670
22609
  "kind": "method",
@@ -22676,16 +22615,6 @@
22676
22615
  }
22677
22616
  }
22678
22617
  },
22679
- {
22680
- "kind": "method",
22681
- "name": "_handleShowPasswordClick",
22682
- "privacy": "private",
22683
- "return": {
22684
- "type": {
22685
- "text": "void"
22686
- }
22687
- }
22688
- },
22689
22618
  {
22690
22619
  "kind": "method",
22691
22620
  "name": "reflectInputGroup",
@@ -22952,18 +22881,8 @@
22952
22881
  "description": "A cloned event of a [change event](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event) emitted from the inner `<input>` element."
22953
22882
  },
22954
22883
  {
22955
- "name": "input",
22956
- "type": {
22957
- "text": "Event"
22958
- },
22959
- "description": "A retargeted event of a [input event](https://developer.mozilla.org/en-US/docs/Web/API/Element/input_event)."
22960
- },
22961
- {
22962
- "name": "toggle",
22963
- "type": {
22964
- "text": "Event"
22965
- },
22966
- "description": "Emitted when the user toggles the password mask."
22884
+ "description": "A retargeted event of a [input event](https://developer.mozilla.org/en-US/docs/Web/API/Element/input_event).",
22885
+ "name": "input"
22967
22886
  }
22968
22887
  ],
22969
22888
  "attributes": [
@@ -23004,15 +22923,6 @@
23004
22923
  "module": "dist/es/base/dds-form-element.js"
23005
22924
  }
23006
22925
  },
23007
- {
23008
- "name": "type",
23009
- "type": {
23010
- "text": "\"text\" | \"number\" | \"password\" | \"email\" | \"tel\" | \"search\""
23011
- },
23012
- "description": "Type of field.\n\n- `\"text\"`: Basic text input with optional left and right icon slots.\n- `\"number\"`: Numeric input with increment/decrement buttons, arrow key support, and optional left icon slot.\n- `\"password\"`: Password input with show/hide toggle button to control mask of password and optional left icon slot.\n- `\"email\"`: Email input with optional left and right icon slots.\n- `\"tel\"`: Telephone input with optional left and right icon slots.\n- `\"search\"`: Search input with built-in search icon and clear button when value is present.",
23013
- "default": "\"text\"",
23014
- "fieldName": "type"
23015
- },
23016
22926
  {
23017
22927
  "name": "placeholder",
23018
22928
  "type": {
@@ -23027,7 +22937,7 @@
23027
22937
  "text": "boolean"
23028
22938
  },
23029
22939
  "default": "false",
23030
- "description": "Whether the text field is readonly.",
22940
+ "description": "Whether the text masked field is readonly.",
23031
22941
  "fieldName": "readonly"
23032
22942
  },
23033
22943
  {
@@ -23036,7 +22946,7 @@
23036
22946
  "text": "boolean"
23037
22947
  },
23038
22948
  "default": "false",
23039
- "description": "Whether the text field is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
22949
+ "description": "Whether the text masked field is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23040
22950
  "fieldName": "disabled"
23041
22951
  },
23042
22952
  {
@@ -23045,7 +22955,7 @@
23045
22955
  "text": "boolean"
23046
22956
  },
23047
22957
  "default": "false",
23048
- "description": "Whether the text field is required.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
22958
+ "description": "Whether the text masked field is required.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23049
22959
  "fieldName": "required"
23050
22960
  },
23051
22961
  {
@@ -23075,42 +22985,6 @@
23075
22985
  "description": "Maximum length of value.",
23076
22986
  "fieldName": "maxlength"
23077
22987
  },
23078
- {
23079
- "name": "step",
23080
- "type": {
23081
- "text": "string | null"
23082
- },
23083
- "default": "null",
23084
- "description": "Interval between values. This is valid when `type=\"number\"`.",
23085
- "fieldName": "step"
23086
- },
23087
- {
23088
- "name": "step-mode",
23089
- "type": {
23090
- "text": "\"free\" | \"snap\""
23091
- },
23092
- "default": "\"free\"",
23093
- "description": "When `type=\"number\"`, whether to allow free input or snap to step boundaries.\n- `\"free\"`: Do not snap to step boundaries; increment/decrement relative to the current value.\n- `\"snap\"`: If the current value is off a step boundary, snap to the next/previous step boundary in the given direction (and finish without applying an extra step).\nNote that step boundaries are aligned to the `min` value if specified; otherwise, they are aligned to `0`. For example, with `step=\"3\"`, boundaries are `..., -3, 0, 3, 6, ...`. If `min=\"-4\"` is also set, the boundaries become `-4, -1, 2, 5, ...`.",
23094
- "fieldName": "stepMode"
23095
- },
23096
- {
23097
- "name": "min",
23098
- "type": {
23099
- "text": "string | null"
23100
- },
23101
- "default": "null",
23102
- "description": "The minimum value. This is valid when `type=\"number\"`.",
23103
- "fieldName": "min"
23104
- },
23105
- {
23106
- "name": "max",
23107
- "type": {
23108
- "text": "string | null"
23109
- },
23110
- "default": "null",
23111
- "description": "The maximum value. This is valid when `type=\"number\"`.",
23112
- "fieldName": "max"
23113
- },
23114
22988
  {
23115
22989
  "name": "pattern",
23116
22990
  "type": {
@@ -23127,127 +23001,96 @@
23127
23001
  },
23128
23002
  "description": "Value of `autocomplete` attribute of the internal `<input>`.",
23129
23003
  "fieldName": "autocomplete"
23130
- },
23131
- {
23132
- "name": "show-password",
23133
- "type": {
23134
- "text": "boolean"
23135
- },
23136
- "default": "false",
23137
- "description": "When `type=\"password\"`, whether to display the password with a black dot or as text.",
23138
- "fieldName": "showPassword"
23139
23004
  }
23140
23005
  ],
23141
23006
  "superclass": {
23142
23007
  "name": "DDSFormElement",
23143
23008
  "module": "/src/base"
23144
23009
  },
23145
- "tagName": "daikin-text-field",
23010
+ "tagName": "daikin-text-masked-field",
23146
23011
  "customElement": true
23147
23012
  }
23148
23013
  ],
23149
23014
  "exports": [
23150
23015
  {
23151
23016
  "kind": "js",
23152
- "name": "DaikinTextField",
23017
+ "name": "FactoryOpts",
23153
23018
  "declaration": {
23154
- "name": "DaikinTextField",
23155
- "module": "src/components/text-field/daikin-text-field.ts"
23019
+ "name": "FactoryOpts",
23020
+ "module": "src/components/text-masked-field/daikin-text-masked-field.ts"
23156
23021
  }
23157
23022
  },
23158
23023
  {
23159
- "kind": "custom-element-definition",
23160
- "name": "daikin-text-field",
23024
+ "kind": "js",
23025
+ "name": "InputMask",
23161
23026
  "declaration": {
23162
- "name": "DaikinTextField",
23163
- "module": "src/components/text-field/daikin-text-field.ts"
23027
+ "name": "InputMask",
23028
+ "module": "src/components/text-masked-field/daikin-text-masked-field.ts"
23164
23029
  }
23165
- }
23166
- ]
23167
- },
23168
- {
23169
- "kind": "javascript-module",
23170
- "path": "dist/es/components/text-field/index.js",
23171
- "declarations": [],
23172
- "exports": [
23030
+ },
23173
23031
  {
23174
23032
  "kind": "js",
23175
- "name": "*",
23033
+ "name": "DaikinTextMaskedField",
23176
23034
  "declaration": {
23177
- "name": "*",
23178
- "module": "src/components/text-field/daikin-text-field"
23035
+ "name": "DaikinTextMaskedField",
23036
+ "module": "src/components/text-masked-field/daikin-text-masked-field.ts"
23037
+ }
23038
+ },
23039
+ {
23040
+ "kind": "custom-element-definition",
23041
+ "name": "daikin-text-masked-field",
23042
+ "declaration": {
23043
+ "name": "DaikinTextMaskedField",
23044
+ "module": "src/components/text-masked-field/daikin-text-masked-field.ts"
23179
23045
  }
23180
23046
  }
23181
23047
  ]
23182
23048
  },
23183
23049
  {
23184
23050
  "kind": "javascript-module",
23185
- "path": "dist/es/components/text-field/number-utils.js",
23186
- "declarations": [
23187
- {
23188
- "kind": "function",
23189
- "name": "updateNumberValue",
23190
- "return": {
23191
- "type": {
23192
- "text": ""
23193
- }
23194
- },
23195
- "parameters": [
23196
- {
23197
- "name": "currentValue",
23198
- "type": {
23199
- "text": "string"
23200
- },
23201
- "description": "Current value as string"
23202
- },
23203
- {
23204
- "name": "direction",
23205
- "type": {
23206
- "text": "1 | -1"
23207
- },
23208
- "description": "Direction: 1 for increment, -1 for decrement"
23209
- },
23210
- {
23211
- "name": "options",
23212
- "type": {
23213
- "text": "NumberUpdateOptions"
23214
- },
23215
- "description": "The update options"
23216
- }
23217
- ],
23218
- "description": "Updates a number value according to step constraints and min/max bounds.\n\nLogic (compliant with Google Chrome behavior):\n0. Valid output range: min <= value <= max, and (value - min) is a multiple of step, or value equals min/max\n1. If max < min, direction up goes to min (max value), direction down goes to max (min value)\n2. If value is out of range or not on step boundary, round to nearest step in the direction and finish\n3. Otherwise, increment/decrement by step"
23219
- }
23220
- ],
23051
+ "path": "dist/es/components/text-masked-field/index.js",
23052
+ "declarations": [],
23221
23053
  "exports": [
23222
23054
  {
23223
23055
  "kind": "js",
23224
- "name": "updateNumberValue",
23056
+ "name": "*",
23225
23057
  "declaration": {
23226
- "name": "updateNumberValue",
23227
- "module": "src/components/text-field/number-utils.ts"
23058
+ "name": "*",
23059
+ "module": "src/components/text-masked-field/daikin-text-masked-field"
23228
23060
  }
23229
23061
  }
23230
23062
  ]
23231
23063
  },
23232
23064
  {
23233
23065
  "kind": "javascript-module",
23234
- "path": "dist/es/components/text-masked-field/daikin-text-masked-field.js",
23066
+ "path": "dist/es/components/text-field/daikin-text-field.js",
23235
23067
  "declarations": [
23236
23068
  {
23237
23069
  "kind": "class",
23238
- "description": "The text masked field component is a UI element that allows users to input single-line text data with input masking support.\nIt functions similarly to the HTML `<input type=\"text\">` tag, providing a simple and efficient way for users to enter and edit short pieces of texts with masking functionality using IMask.js.\nCan be used within `daikin-input-group` component.\n\nHierarchies:\n- `daikin-text-masked-field` (can be used solely)\n- `daikin-input-group` > `daikin-text-masked-field`",
23239
- "name": "DaikinTextMaskedField",
23070
+ "description": "The text field component is a UI element that allows users to input single-line text data.\nIt functions similarly to the HTML `<input type=\"text\">` tag, providing a simple and efficient way for users to enter and edit short pieces of texts, such as names, email addresses, or search queries.\nCan be used within `daikin-input-group` component.\n\nHierarchies:\n- `daikin-text-field` (can be used solely)\n- `daikin-input-group` > `daikin-text-field`",
23071
+ "name": "DaikinTextField",
23240
23072
  "slots": [
23241
23073
  {
23242
- "description": "Specify the icon you want to use on the left. You can also use something other than `daikin-icon`.",
23074
+ "description": "Specify the icon you want to use on the left. You can also use something other than `daikin-icon`. Available only if the type is one of: - `\"text\"` - `\"number\"` - `\"password\"` - `\"email\"` - `\"tel\"`",
23243
23075
  "name": "left-icon"
23244
23076
  },
23245
23077
  {
23246
- "description": "Specify the icon you want to use on the right. You can also use something other than `daikin-icon`.",
23078
+ "description": "Specify the icon you want to use on the right. You can also use something other than `daikin-icon`. Available only if the type is one of: - `\"text\"` - `\"email\"` - `\"tel\"`",
23247
23079
  "name": "right-icon"
23248
23080
  }
23249
23081
  ],
23250
23082
  "members": [
23083
+ {
23084
+ "kind": "field",
23085
+ "name": "type",
23086
+ "type": {
23087
+ "text": "\"text\" | \"number\" | \"password\" | \"email\" | \"tel\" | \"search\""
23088
+ },
23089
+ "description": "Type of field.\n\n- `\"text\"`: Basic text input with optional left and right icon slots.\n- `\"number\"`: Numeric input with increment/decrement buttons, arrow key support, and optional left icon slot.\n- `\"password\"`: Password input with show/hide toggle button to control mask of password and optional left icon slot.\n- `\"email\"`: Email input with optional left and right icon slots.\n- `\"tel\"`: Telephone input with optional left and right icon slots.\n- `\"search\"`: Search input with built-in search icon and clear button when value is present.",
23090
+ "default": "\"text\"",
23091
+ "attribute": "type",
23092
+ "reflects": true
23093
+ },
23251
23094
  {
23252
23095
  "kind": "field",
23253
23096
  "name": "placeholder",
@@ -23265,7 +23108,7 @@
23265
23108
  "text": "boolean"
23266
23109
  },
23267
23110
  "default": "false",
23268
- "description": "Whether the text masked field is readonly.",
23111
+ "description": "Whether the text field is readonly.",
23269
23112
  "attribute": "readonly",
23270
23113
  "reflects": true
23271
23114
  },
@@ -23276,7 +23119,7 @@
23276
23119
  "text": "boolean"
23277
23120
  },
23278
23121
  "default": "false",
23279
- "description": "Whether the text masked field is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23122
+ "description": "Whether the text field is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23280
23123
  "attribute": "disabled",
23281
23124
  "reflects": true
23282
23125
  },
@@ -23287,7 +23130,7 @@
23287
23130
  "text": "boolean"
23288
23131
  },
23289
23132
  "default": "false",
23290
- "description": "Whether the text masked field is required.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23133
+ "description": "Whether the text field is required.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23291
23134
  "attribute": "required",
23292
23135
  "reflects": true
23293
23136
  },
@@ -23326,23 +23169,58 @@
23326
23169
  },
23327
23170
  {
23328
23171
  "kind": "field",
23329
- "name": "pattern",
23172
+ "name": "step",
23330
23173
  "type": {
23331
23174
  "text": "string | null"
23332
23175
  },
23333
23176
  "default": "null",
23334
- "description": "The pattern of value.",
23335
- "attribute": "pattern",
23177
+ "description": "Interval between values. This is valid when `type=\"number\"`.",
23178
+ "attribute": "step",
23336
23179
  "reflects": true
23337
23180
  },
23338
23181
  {
23339
23182
  "kind": "field",
23340
- "name": "mask",
23183
+ "name": "stepMode",
23341
23184
  "type": {
23342
- "text": "string | FactoryOpts | null"
23185
+ "text": "\"free\" | \"snap\""
23186
+ },
23187
+ "default": "\"free\"",
23188
+ "description": "When `type=\"number\"`, whether to allow free input or snap to step boundaries.\n- `\"free\"`: Do not snap to step boundaries; increment/decrement relative to the current value.\n- `\"snap\"`: If the current value is off a step boundary, snap to the next/previous step boundary in the given direction (and finish without applying an extra step).\nNote that step boundaries are aligned to the `min` value if specified; otherwise, they are aligned to `0`. For example, with `step=\"3\"`, boundaries are `..., -3, 0, 3, 6, ...`. If `min=\"-4\"` is also set, the boundaries become `-4, -1, 2, 5, ...`.",
23189
+ "attribute": "step-mode",
23190
+ "reflects": true
23191
+ },
23192
+ {
23193
+ "kind": "field",
23194
+ "name": "min",
23195
+ "type": {
23196
+ "text": "string | null"
23343
23197
  },
23344
23198
  "default": "null",
23345
- "description": "Input mask configuration. When provided as a string, it will be used as `{ mask: string, lazy: false }`.\nWhen provided as an object, it will be passed directly to IMask.\n\nPattern symbols:\n- `0` - any digit\n- `a` - any letter\n- `*` - any char\n- `[]` - make input optional\n- `{}` - include fixed part in unmasked value\n- `` ` `` - prevent symbols shift back\n- Other chars are treated as fixed\n- Use `\\\\` to escape definition characters (e.g., `\\\\0`)\n\nExamples:\n- `\"00/00/0000\"` - date format (MM/DD/YYYY)\n- `\"{#}000[aaa]/NIC-\\`*[**]\"` - complex pattern with optional parts\n\nFor more details, see: https://imask.js.org/guide.html#masked-pattern"
23199
+ "description": "The minimum value. This is valid when `type=\"number\"`.",
23200
+ "attribute": "min",
23201
+ "reflects": true
23202
+ },
23203
+ {
23204
+ "kind": "field",
23205
+ "name": "max",
23206
+ "type": {
23207
+ "text": "string | null"
23208
+ },
23209
+ "default": "null",
23210
+ "description": "The maximum value. This is valid when `type=\"number\"`.",
23211
+ "attribute": "max",
23212
+ "reflects": true
23213
+ },
23214
+ {
23215
+ "kind": "field",
23216
+ "name": "pattern",
23217
+ "type": {
23218
+ "text": "string | null"
23219
+ },
23220
+ "default": "null",
23221
+ "description": "The pattern of value.",
23222
+ "attribute": "pattern",
23223
+ "reflects": true
23346
23224
  },
23347
23225
  {
23348
23226
  "kind": "field",
@@ -23356,12 +23234,14 @@
23356
23234
  },
23357
23235
  {
23358
23236
  "kind": "field",
23359
- "name": "_unmaskedValue",
23237
+ "name": "showPassword",
23360
23238
  "type": {
23361
- "text": "string"
23239
+ "text": "boolean"
23362
23240
  },
23363
- "privacy": "private",
23364
- "default": "\"\""
23241
+ "default": "false",
23242
+ "description": "When `type=\"password\"`, whether to display the password with a black dot or as text.",
23243
+ "attribute": "show-password",
23244
+ "reflects": true
23365
23245
  },
23366
23246
  {
23367
23247
  "kind": "field",
@@ -23394,44 +23274,31 @@
23394
23274
  {
23395
23275
  "kind": "field",
23396
23276
  "name": "_inputRef",
23397
- "privacy": "private"
23398
- },
23399
- {
23400
- "kind": "field",
23401
- "name": "_maskInstance",
23402
23277
  "type": {
23403
- "text": "InputMask<object> | null"
23278
+ "text": "Ref<HTMLInputElement>"
23404
23279
  },
23405
23280
  "privacy": "private",
23406
- "default": "null"
23407
- },
23408
- {
23409
- "kind": "method",
23410
- "name": "_initializeMask",
23411
- "privacy": "private",
23412
- "return": {
23413
- "type": {
23414
- "text": "void"
23415
- }
23416
- }
23281
+ "readonly": true
23417
23282
  },
23418
23283
  {
23419
23284
  "kind": "method",
23420
- "name": "_destroyMask",
23421
- "privacy": "private",
23285
+ "name": "focus",
23422
23286
  "return": {
23423
23287
  "type": {
23424
23288
  "text": "void"
23425
23289
  }
23426
- }
23427
- },
23428
- {
23429
- "kind": "field",
23430
- "name": "unmaskedValue",
23431
- "type": {
23432
- "text": "string"
23433
23290
  },
23434
- "description": "The unmasked value of the input."
23291
+ "parameters": [
23292
+ {
23293
+ "name": "options",
23294
+ "optional": true,
23295
+ "type": {
23296
+ "text": "FocusOptions"
23297
+ },
23298
+ "description": "focus options"
23299
+ }
23300
+ ],
23301
+ "description": "Focuses on the inner input."
23435
23302
  },
23436
23303
  {
23437
23304
  "kind": "method",
@@ -23479,7 +23346,18 @@
23479
23346
  },
23480
23347
  {
23481
23348
  "kind": "method",
23482
- "name": "focus",
23349
+ "name": "_handleClearClick",
23350
+ "privacy": "private",
23351
+ "return": {
23352
+ "type": {
23353
+ "text": "void"
23354
+ }
23355
+ }
23356
+ },
23357
+ {
23358
+ "kind": "method",
23359
+ "name": "_handleKeyDown",
23360
+ "privacy": "private",
23483
23361
  "return": {
23484
23362
  "type": {
23485
23363
  "text": "void"
@@ -23487,15 +23365,30 @@
23487
23365
  },
23488
23366
  "parameters": [
23489
23367
  {
23490
- "name": "options",
23491
- "optional": true,
23368
+ "name": "event",
23492
23369
  "type": {
23493
- "text": "FocusOptions"
23494
- },
23495
- "description": "focus options"
23370
+ "text": "KeyboardEvent"
23371
+ }
23496
23372
  }
23497
- ],
23498
- "description": "Focuses on the inner input."
23373
+ ]
23374
+ },
23375
+ {
23376
+ "kind": "method",
23377
+ "name": "_updateNumberValue",
23378
+ "privacy": "private",
23379
+ "return": {
23380
+ "type": {
23381
+ "text": "void"
23382
+ }
23383
+ },
23384
+ "parameters": [
23385
+ {
23386
+ "name": "sign",
23387
+ "type": {
23388
+ "text": "1 | -1"
23389
+ }
23390
+ }
23391
+ ]
23499
23392
  },
23500
23393
  {
23501
23394
  "kind": "method",
@@ -23507,6 +23400,16 @@
23507
23400
  }
23508
23401
  }
23509
23402
  },
23403
+ {
23404
+ "kind": "method",
23405
+ "name": "_handleShowPasswordClick",
23406
+ "privacy": "private",
23407
+ "return": {
23408
+ "type": {
23409
+ "text": "void"
23410
+ }
23411
+ }
23412
+ },
23510
23413
  {
23511
23414
  "kind": "method",
23512
23415
  "name": "reflectInputGroup",
@@ -23773,8 +23676,18 @@
23773
23676
  "description": "A cloned event of a [change event](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event) emitted from the inner `<input>` element."
23774
23677
  },
23775
23678
  {
23776
- "description": "A retargeted event of a [input event](https://developer.mozilla.org/en-US/docs/Web/API/Element/input_event).",
23777
- "name": "input"
23679
+ "name": "input",
23680
+ "type": {
23681
+ "text": "Event"
23682
+ },
23683
+ "description": "A retargeted event of a [input event](https://developer.mozilla.org/en-US/docs/Web/API/Element/input_event)."
23684
+ },
23685
+ {
23686
+ "name": "toggle",
23687
+ "type": {
23688
+ "text": "Event"
23689
+ },
23690
+ "description": "Emitted when the user toggles the password mask."
23778
23691
  }
23779
23692
  ],
23780
23693
  "attributes": [
@@ -23815,6 +23728,15 @@
23815
23728
  "module": "dist/es/base/dds-form-element.js"
23816
23729
  }
23817
23730
  },
23731
+ {
23732
+ "name": "type",
23733
+ "type": {
23734
+ "text": "\"text\" | \"number\" | \"password\" | \"email\" | \"tel\" | \"search\""
23735
+ },
23736
+ "description": "Type of field.\n\n- `\"text\"`: Basic text input with optional left and right icon slots.\n- `\"number\"`: Numeric input with increment/decrement buttons, arrow key support, and optional left icon slot.\n- `\"password\"`: Password input with show/hide toggle button to control mask of password and optional left icon slot.\n- `\"email\"`: Email input with optional left and right icon slots.\n- `\"tel\"`: Telephone input with optional left and right icon slots.\n- `\"search\"`: Search input with built-in search icon and clear button when value is present.",
23737
+ "default": "\"text\"",
23738
+ "fieldName": "type"
23739
+ },
23818
23740
  {
23819
23741
  "name": "placeholder",
23820
23742
  "type": {
@@ -23829,7 +23751,7 @@
23829
23751
  "text": "boolean"
23830
23752
  },
23831
23753
  "default": "false",
23832
- "description": "Whether the text masked field is readonly.",
23754
+ "description": "Whether the text field is readonly.",
23833
23755
  "fieldName": "readonly"
23834
23756
  },
23835
23757
  {
@@ -23838,7 +23760,7 @@
23838
23760
  "text": "boolean"
23839
23761
  },
23840
23762
  "default": "false",
23841
- "description": "Whether the text masked field is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23763
+ "description": "Whether the text field is disabled.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23842
23764
  "fieldName": "disabled"
23843
23765
  },
23844
23766
  {
@@ -23847,7 +23769,7 @@
23847
23769
  "text": "boolean"
23848
23770
  },
23849
23771
  "default": "false",
23850
- "description": "Whether the text masked field is required.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23772
+ "description": "Whether the text field is required.\nControlled by `daikin-input-group` when used within `daikin-input-group`.",
23851
23773
  "fieldName": "required"
23852
23774
  },
23853
23775
  {
@@ -23877,6 +23799,42 @@
23877
23799
  "description": "Maximum length of value.",
23878
23800
  "fieldName": "maxlength"
23879
23801
  },
23802
+ {
23803
+ "name": "step",
23804
+ "type": {
23805
+ "text": "string | null"
23806
+ },
23807
+ "default": "null",
23808
+ "description": "Interval between values. This is valid when `type=\"number\"`.",
23809
+ "fieldName": "step"
23810
+ },
23811
+ {
23812
+ "name": "step-mode",
23813
+ "type": {
23814
+ "text": "\"free\" | \"snap\""
23815
+ },
23816
+ "default": "\"free\"",
23817
+ "description": "When `type=\"number\"`, whether to allow free input or snap to step boundaries.\n- `\"free\"`: Do not snap to step boundaries; increment/decrement relative to the current value.\n- `\"snap\"`: If the current value is off a step boundary, snap to the next/previous step boundary in the given direction (and finish without applying an extra step).\nNote that step boundaries are aligned to the `min` value if specified; otherwise, they are aligned to `0`. For example, with `step=\"3\"`, boundaries are `..., -3, 0, 3, 6, ...`. If `min=\"-4\"` is also set, the boundaries become `-4, -1, 2, 5, ...`.",
23818
+ "fieldName": "stepMode"
23819
+ },
23820
+ {
23821
+ "name": "min",
23822
+ "type": {
23823
+ "text": "string | null"
23824
+ },
23825
+ "default": "null",
23826
+ "description": "The minimum value. This is valid when `type=\"number\"`.",
23827
+ "fieldName": "min"
23828
+ },
23829
+ {
23830
+ "name": "max",
23831
+ "type": {
23832
+ "text": "string | null"
23833
+ },
23834
+ "default": "null",
23835
+ "description": "The maximum value. This is valid when `type=\"number\"`.",
23836
+ "fieldName": "max"
23837
+ },
23880
23838
  {
23881
23839
  "name": "pattern",
23882
23840
  "type": {
@@ -23893,54 +23851,47 @@
23893
23851
  },
23894
23852
  "description": "Value of `autocomplete` attribute of the internal `<input>`.",
23895
23853
  "fieldName": "autocomplete"
23854
+ },
23855
+ {
23856
+ "name": "show-password",
23857
+ "type": {
23858
+ "text": "boolean"
23859
+ },
23860
+ "default": "false",
23861
+ "description": "When `type=\"password\"`, whether to display the password with a black dot or as text.",
23862
+ "fieldName": "showPassword"
23896
23863
  }
23897
23864
  ],
23898
23865
  "superclass": {
23899
23866
  "name": "DDSFormElement",
23900
23867
  "module": "/src/base"
23901
23868
  },
23902
- "tagName": "daikin-text-masked-field",
23869
+ "tagName": "daikin-text-field",
23903
23870
  "customElement": true
23904
23871
  }
23905
23872
  ],
23906
23873
  "exports": [
23907
23874
  {
23908
23875
  "kind": "js",
23909
- "name": "FactoryOpts",
23910
- "declaration": {
23911
- "name": "FactoryOpts",
23912
- "module": "src/components/text-masked-field/daikin-text-masked-field.ts"
23913
- }
23914
- },
23915
- {
23916
- "kind": "js",
23917
- "name": "InputMask",
23918
- "declaration": {
23919
- "name": "InputMask",
23920
- "module": "src/components/text-masked-field/daikin-text-masked-field.ts"
23921
- }
23922
- },
23923
- {
23924
- "kind": "js",
23925
- "name": "DaikinTextMaskedField",
23876
+ "name": "DaikinTextField",
23926
23877
  "declaration": {
23927
- "name": "DaikinTextMaskedField",
23928
- "module": "src/components/text-masked-field/daikin-text-masked-field.ts"
23878
+ "name": "DaikinTextField",
23879
+ "module": "src/components/text-field/daikin-text-field.ts"
23929
23880
  }
23930
23881
  },
23931
23882
  {
23932
23883
  "kind": "custom-element-definition",
23933
- "name": "daikin-text-masked-field",
23884
+ "name": "daikin-text-field",
23934
23885
  "declaration": {
23935
- "name": "DaikinTextMaskedField",
23936
- "module": "src/components/text-masked-field/daikin-text-masked-field.ts"
23886
+ "name": "DaikinTextField",
23887
+ "module": "src/components/text-field/daikin-text-field.ts"
23937
23888
  }
23938
23889
  }
23939
23890
  ]
23940
23891
  },
23941
23892
  {
23942
23893
  "kind": "javascript-module",
23943
- "path": "dist/es/components/text-masked-field/index.js",
23894
+ "path": "dist/es/components/text-field/index.js",
23944
23895
  "declarations": [],
23945
23896
  "exports": [
23946
23897
  {
@@ -23948,7 +23899,56 @@
23948
23899
  "name": "*",
23949
23900
  "declaration": {
23950
23901
  "name": "*",
23951
- "module": "src/components/text-masked-field/daikin-text-masked-field"
23902
+ "module": "src/components/text-field/daikin-text-field"
23903
+ }
23904
+ }
23905
+ ]
23906
+ },
23907
+ {
23908
+ "kind": "javascript-module",
23909
+ "path": "dist/es/components/text-field/number-utils.js",
23910
+ "declarations": [
23911
+ {
23912
+ "kind": "function",
23913
+ "name": "updateNumberValue",
23914
+ "return": {
23915
+ "type": {
23916
+ "text": ""
23917
+ }
23918
+ },
23919
+ "parameters": [
23920
+ {
23921
+ "name": "currentValue",
23922
+ "type": {
23923
+ "text": "string"
23924
+ },
23925
+ "description": "Current value as string"
23926
+ },
23927
+ {
23928
+ "name": "direction",
23929
+ "type": {
23930
+ "text": "1 | -1"
23931
+ },
23932
+ "description": "Direction: 1 for increment, -1 for decrement"
23933
+ },
23934
+ {
23935
+ "name": "options",
23936
+ "type": {
23937
+ "text": "NumberUpdateOptions"
23938
+ },
23939
+ "description": "The update options"
23940
+ }
23941
+ ],
23942
+ "description": "Updates a number value according to step constraints and min/max bounds.\n\nLogic (compliant with Google Chrome behavior):\n0. Valid output range: min <= value <= max, and (value - min) is a multiple of step, or value equals min/max\n1. If max < min, direction up goes to min (max value), direction down goes to max (min value)\n2. If value is out of range or not on step boundary, round to nearest step in the direction and finish\n3. Otherwise, increment/decrement by step"
23943
+ }
23944
+ ],
23945
+ "exports": [
23946
+ {
23947
+ "kind": "js",
23948
+ "name": "updateNumberValue",
23949
+ "declaration": {
23950
+ "name": "updateNumberValue",
23951
+ "module": "src/components/text-field/number-utils.ts"
23952
23952
  }
23953
23953
  }
23954
23954
  ]
@@ -42,7 +42,7 @@ function ensureGlobalKeyIndex(name) {
42
42
  */
43
43
  var DDSElement = class extends lit.LitElement {
44
44
  static {
45
- this.version = "2.1.0-next.2";
45
+ this.version = "2.1.0-next.3";
46
46
  }
47
47
  /**
48
48
  * Override of LitElement's getPropertyDescriptor to add support for fallback values
@@ -9,7 +9,7 @@ let lit = require("lit");
9
9
  */
10
10
  var clickOutsideDirective = require_controller_directive.createControllerDirective((element, callback) => {
11
11
  const listener = (event) => {
12
- if (!event.target || element.contains(event.target)) return;
12
+ if (event.composedPath().includes(element)) return;
13
13
  callback.call(element, event);
14
14
  };
15
15
  window.addEventListener("pointerdown", listener, true);
@@ -42,7 +42,7 @@ function ensureGlobalKeyIndex(name) {
42
42
  */
43
43
  var DDSElement = class extends lit.LitElement {
44
44
  static {
45
- this.version = "2.1.0-next.2";
45
+ this.version = "2.1.0-next.3";
46
46
  }
47
47
  /**
48
48
  * Override of LitElement's getPropertyDescriptor to add support for fallback values
@@ -9,7 +9,7 @@ let lit = require("lit");
9
9
  */
10
10
  var clickOutsideDirective = require_controller_directive.createControllerDirective((element, callback) => {
11
11
  const listener = (event) => {
12
- if (!event.target || element.contains(event.target)) return;
12
+ if (event.composedPath().includes(element)) return;
13
13
  callback.call(element, event);
14
14
  };
15
15
  window.addEventListener("pointerdown", listener, true);
@@ -42,7 +42,7 @@ function ensureGlobalKeyIndex(name) {
42
42
  */
43
43
  var DDSElement = class extends LitElement {
44
44
  static {
45
- this.version = "2.1.0-next.2";
45
+ this.version = "2.1.0-next.3";
46
46
  }
47
47
  /**
48
48
  * Override of LitElement's getPropertyDescriptor to add support for fallback values
@@ -9,7 +9,7 @@ import { nothing } from "lit";
9
9
  */
10
10
  var clickOutsideDirective = createControllerDirective((element, callback) => {
11
11
  const listener = (event) => {
12
- if (!event.target || element.contains(event.target)) return;
12
+ if (event.composedPath().includes(element)) return;
13
13
  callback.call(element, event);
14
14
  };
15
15
  window.addEventListener("pointerdown", listener, true);
@@ -42,7 +42,7 @@ function ensureGlobalKeyIndex(name) {
42
42
  */
43
43
  var DDSElement = class extends LitElement {
44
44
  static {
45
- this.version = "2.1.0-next.2";
45
+ this.version = "2.1.0-next.3";
46
46
  }
47
47
  /**
48
48
  * Override of LitElement's getPropertyDescriptor to add support for fallback values
@@ -9,7 +9,7 @@ import { nothing } from "lit";
9
9
  */
10
10
  var clickOutsideDirective = createControllerDirective((element, callback) => {
11
11
  const listener = (event) => {
12
- if (!event.target || element.contains(event.target)) return;
12
+ if (event.composedPath().includes(element)) return;
13
13
  callback.call(element, event);
14
14
  };
15
15
  window.addEventListener("pointerdown", listener, true);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@daikin-oss/design-system-web-components",
3
- "version": "2.1.0-next.2",
3
+ "version": "2.1.0-next.3",
4
4
  "description": "Design system using web components",
5
5
  "type": "module",
6
6
  "files": [