@uniai-fe/uds-primitives 0.6.15 → 0.7.0

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/styles.css CHANGED
@@ -521,6 +521,105 @@
521
521
  /* Status/affix colors */
522
522
  --input-status-error-color: var(--color-error);
523
523
  --input-status-success-color: var(--color-primary-default);
524
+ /* TimePicker tokens */
525
+ --input-time-width: 100%;
526
+ --input-time-flex: 0 1 auto;
527
+ --input-time-layout-gap: var(--input-layout-gap);
528
+ --input-time-height-small: var(--input-default-height-small);
529
+ --input-time-height-medium: var(--input-default-height-medium);
530
+ --input-time-height-large: var(--input-default-height-large);
531
+ --input-time-tertiary-height: var(--input-tertiary-height-base);
532
+ --input-time-padding-inline: var(--input-default-padding-inline);
533
+ --input-time-padding-block: var(--input-default-padding-block);
534
+ --input-time-secondary-padding-block: var(--input-secondary-padding-block);
535
+ --input-time-table-padding-inline: var(--spacing-padding-4);
536
+ --input-time-radius: var(--input-default-radius-base);
537
+ --input-time-tertiary-radius: var(--input-tertiary-radius-base);
538
+ --input-time-table-radius: var(--input-table-radius-base);
539
+ --input-time-field-gap: var(--spacing-gap-2);
540
+ --input-time-field-width: 2.4ch;
541
+ --input-time-period-field-width: 3.8ch;
542
+ --input-time-field-height: 100%;
543
+ --input-time-field-y-offset: 2px;
544
+ --input-time-section-gap: var(--spacing-gap-1);
545
+ --input-time-section-button-size: 28px;
546
+ --input-time-section-button-radius: var(--theme-radius-medium-1);
547
+ --input-time-left-section-width: 44px;
548
+ --input-time-section-width: 56px;
549
+ --input-time-section-width-with-clear: 92px;
550
+ --input-time-section-edge-gap: var(--input-time-padding-inline);
551
+ --input-time-left-section-padding-offset: 44px;
552
+ --input-time-right-section-padding-offset: 64px;
553
+ --input-time-right-section-padding-offset-with-clear: 100px;
554
+ --input-time-table-section-padding-offset: 48px;
555
+ --input-time-table-clear-padding-offset: 56px;
556
+ --input-time-table-field-width: 2.4ch;
557
+ --input-time-table-period-field-width: 3.8ch;
558
+ --input-time-icon-size: 24px;
559
+ --input-time-text-color: var(--input-text-color);
560
+ --input-time-text-disabled-color: var(--input-text-disabled-color);
561
+ --input-time-placeholder-color: var(--input-placeholder-color);
562
+ --input-time-separator-color: var(--color-label-alternative);
563
+ --input-time-icon-color: var(--color-label-alternative);
564
+ --input-time-icon-disabled-color: var(--color-label-disabled);
565
+ --input-time-font-size: var(--input-text-medium-size);
566
+ --input-time-line-height: var(--input-text-medium-line-height);
567
+ --input-time-font-weight: var(--input-text-medium-weight);
568
+ --input-time-letter-spacing: var(--input-text-medium-letter-spacing);
569
+ --input-time-text-small-size: var(--input-text-small-size);
570
+ --input-time-text-small-line-height: var(--input-text-small-line-height);
571
+ --input-time-text-small-weight: var(--input-text-small-weight);
572
+ --input-time-text-small-letter-spacing: var(
573
+ --input-text-small-letter-spacing
574
+ );
575
+ --input-time-text-large-size: var(--input-text-large-size);
576
+ --input-time-text-large-line-height: var(--input-text-large-line-height);
577
+ --input-time-text-large-weight: var(--input-text-large-weight);
578
+ --input-time-text-large-letter-spacing: var(
579
+ --input-text-large-letter-spacing
580
+ );
581
+ --input-time-table-text-size: var(--input-table-text-small-size);
582
+ --input-time-table-text-line-height: var(
583
+ --input-table-text-small-line-height
584
+ );
585
+ --input-time-table-text-weight: var(--input-table-text-small-weight);
586
+ --input-time-border-color: var(--input-border-color);
587
+ --input-time-border-width: var(--input-border-width-default);
588
+ --input-time-border-width-emphasis: var(--input-border-width-emphasis);
589
+ --input-time-border-active-color: var(--input-border-active-color);
590
+ --input-time-border-success-color: var(--input-border-success-color);
591
+ --input-time-border-error-color: var(--input-border-error-color);
592
+ --input-time-border-disabled-color: var(--input-border-disabled-color);
593
+ --input-time-table-border-color: var(--input-border-table-default-color);
594
+ --input-time-surface-color: var(--input-surface-color);
595
+ --input-time-secondary-surface-color: var(--input-secondary-surface-color);
596
+ --input-time-surface-disabled-color: var(--input-surface-disabled-color);
597
+ --input-time-table-surface-color: var(--input-table-surface-color);
598
+ --input-time-dropdown-padding: var(--spacing-padding-2);
599
+ --input-time-dropdown-radius: var(--theme-radius-large-1);
600
+ --input-time-dropdown-border-width: 1px;
601
+ --input-time-dropdown-border-color: var(--color-border-standard-cool-gray);
602
+ --input-time-dropdown-surface-color: var(--color-common-100);
603
+ --input-time-dropdown-shadow: 0px 4px 22px rgba(19, 22, 32, 0.12);
604
+ --input-time-dropdown-group-gap: var(--spacing-gap-3);
605
+ --input-time-option-gap: var(--spacing-gap-1);
606
+ --input-time-scrollarea-width: 64px;
607
+ --input-time-scrollarea-gutter: 8px;
608
+ --input-time-option-min-width: 56px;
609
+ --input-time-option-height: 32px;
610
+ --input-time-option-radius: var(--theme-radius-medium-1);
611
+ --input-time-option-color: var(--color-label-standard);
612
+ --input-time-option-hover-color: var(--color-label-strong);
613
+ --input-time-option-active-color: var(--color-common-100);
614
+ --input-time-option-hover-surface-color: var(--color-neutral-95);
615
+ --input-time-option-active-surface-color: var(--color-primary-default);
616
+ --input-time-option-font-size: var(--font-body-xsmall-size);
617
+ --input-time-option-line-height: var(--font-body-xsmall-line-height);
618
+ --input-time-option-font-weight: var(--font-body-xsmall-weight);
619
+ --input-time-presets-label-color: var(--color-label-alternative);
620
+ --input-time-presets-label-size: var(--font-label-small-size);
621
+ --input-time-presets-label-line-height: var(--font-label-small-line-height);
622
+ --input-time-presets-label-weight: var(--font-label-small-weight);
524
623
  --theme-navigation-height: 86px;
525
624
  --theme-navigation-padding-inline: 32px;
526
625
  --theme-navigation-padding-block-start: 8px;
@@ -3665,6 +3764,354 @@ figure.chip {
3665
3764
  --button-flex: 0 0 auto;
3666
3765
  }
3667
3766
 
3767
+ .input-time {
3768
+ display: flex;
3769
+ flex-direction: column;
3770
+ gap: var(--input-time-layout-gap);
3771
+ width: var(--input-time-width);
3772
+ flex: var(--input-time-flex);
3773
+ min-width: 0;
3774
+ }
3775
+ .input-time:where([data-width=auto]) {
3776
+ --input-time-width: auto;
3777
+ --input-time-flex: 0 1 auto;
3778
+ }
3779
+ .input-time:where([data-width=fill]) {
3780
+ --input-time-width: auto;
3781
+ --input-time-flex: 1 1 0%;
3782
+ }
3783
+ .input-time:where([data-width=full]), .input-time:where([data-block=true]) {
3784
+ --input-time-width: 100%;
3785
+ --input-time-flex: 0 0 100%;
3786
+ }
3787
+ .input-time:where([data-width=fit]) {
3788
+ --input-time-width: fit-content;
3789
+ --input-time-flex: 0 0 auto;
3790
+ }
3791
+ .input-time:where([data-width=custom]) {
3792
+ --input-time-flex: 0 0 auto;
3793
+ }
3794
+ .input-time:where([data-priority=table]) {
3795
+ display: block;
3796
+ --input-time-width: 100%;
3797
+ height: 100%;
3798
+ }
3799
+
3800
+ .input-time-picker,
3801
+ .input-time-wrapper {
3802
+ width: 100%;
3803
+ }
3804
+
3805
+ .input-time-wrapper {
3806
+ position: relative;
3807
+ }
3808
+
3809
+ .input-time-input {
3810
+ box-sizing: border-box;
3811
+ width: 100%;
3812
+ min-height: var(--input-time-height-medium);
3813
+ border: var(--input-time-border-width) solid var(--input-time-border-color);
3814
+ border-radius: var(--input-time-radius);
3815
+ background-color: var(--input-time-surface-color);
3816
+ color: var(--input-time-text-color);
3817
+ padding: var(--input-time-padding-block) var(--input-time-padding-inline);
3818
+ box-shadow: none;
3819
+ transition: border-color 0.15s ease, background-color 0.15s ease;
3820
+ }
3821
+
3822
+ .input-time:where([data-icon-position=left]) .input-time-input {
3823
+ padding-inline-start: var(--input-time-left-section-padding-offset);
3824
+ }
3825
+ .input-time:where([data-icon-position=left]):where([data-has-clear=true]) .input-time-input {
3826
+ padding-inline-end: var(--input-time-right-section-padding-offset);
3827
+ }
3828
+
3829
+ .input-time:where([data-icon-position=right]) .input-time-input {
3830
+ padding-inline-end: var(--input-time-right-section-padding-offset);
3831
+ }
3832
+ .input-time:where([data-icon-position=right]):where([data-clearable=true]) .input-time-input {
3833
+ padding-inline-end: var(--input-time-right-section-padding-offset-with-clear);
3834
+ }
3835
+
3836
+ .input-time:where([data-size=small]) .input-time-input {
3837
+ min-height: var(--input-time-height-small);
3838
+ --input-time-font-size: var(--input-time-text-small-size);
3839
+ --input-time-line-height: var(--input-time-text-small-line-height);
3840
+ --input-time-font-weight: var(--input-time-text-small-weight);
3841
+ --input-time-letter-spacing: var(--input-time-text-small-letter-spacing);
3842
+ }
3843
+
3844
+ .input-time:where([data-size=large]) .input-time-input {
3845
+ min-height: var(--input-time-height-large);
3846
+ --input-time-font-size: var(--input-time-text-large-size);
3847
+ --input-time-line-height: var(--input-time-text-large-line-height);
3848
+ --input-time-font-weight: var(--input-time-text-large-weight);
3849
+ --input-time-letter-spacing: var(--input-time-text-large-letter-spacing);
3850
+ }
3851
+
3852
+ .input-time:where([data-priority=secondary]) .input-time-input {
3853
+ border: none;
3854
+ border-bottom: var(--input-time-border-width) solid var(--input-time-border-color);
3855
+ border-radius: 0;
3856
+ background-color: var(--input-time-secondary-surface-color);
3857
+ padding-inline: 0;
3858
+ padding-block: var(--input-time-secondary-padding-block);
3859
+ }
3860
+
3861
+ .input-time:where([data-priority=tertiary]) .input-time-input {
3862
+ min-height: var(--input-time-tertiary-height);
3863
+ border-radius: var(--input-time-tertiary-radius);
3864
+ }
3865
+
3866
+ .input-time:where([data-priority=table]) {
3867
+ height: 100%;
3868
+ }
3869
+ .input-time:where([data-priority=table]) .input-time-picker,
3870
+ .input-time:where([data-priority=table]) .input-time-wrapper,
3871
+ .input-time:where([data-priority=table]) .input-time-input {
3872
+ height: 100%;
3873
+ }
3874
+ .input-time:where([data-priority=table]) .input-time-input {
3875
+ min-height: var(--input-time-height-small);
3876
+ border-color: var(--input-time-table-border-color);
3877
+ border-radius: var(--input-time-table-radius);
3878
+ background-color: var(--input-time-table-surface-color);
3879
+ padding-inline: var(--input-time-table-padding-inline);
3880
+ --input-time-font-size: var(--input-time-table-text-size);
3881
+ --input-time-line-height: var(--input-time-table-text-line-height);
3882
+ --input-time-font-weight: var(--input-time-table-text-weight);
3883
+ }
3884
+ .input-time:where([data-priority=table]):where([data-icon-position=left]) .input-time-input {
3885
+ padding-inline-start: var(--input-time-table-section-padding-offset);
3886
+ }
3887
+ .input-time:where([data-priority=table]):where([data-icon-position=right]) .input-time-input {
3888
+ padding-inline-end: var(--input-time-right-section-padding-offset);
3889
+ }
3890
+ .input-time:where([data-priority=table]):where([data-has-clear=true]) .input-time-input {
3891
+ padding-inline-end: var(--input-time-table-clear-padding-offset);
3892
+ }
3893
+ .input-time:where([data-priority=table]) .input-time-fields-group {
3894
+ --input-time-field-y-offset: 0px;
3895
+ }
3896
+ .input-time:where([data-priority=table]) .input-time-field {
3897
+ --input-time-field-width: var(--input-time-table-field-width);
3898
+ }
3899
+ .input-time:where([data-priority=table]) .input-time-field:where(select) {
3900
+ --input-time-period-field-width: var(--input-time-table-period-field-width);
3901
+ }
3902
+
3903
+ .input-time:where([data-state=active]) .input-time-input {
3904
+ border-color: var(--input-time-border-active-color);
3905
+ border-width: var(--input-time-border-width-emphasis);
3906
+ }
3907
+
3908
+ .input-time:where([data-state=success]) .input-time-input {
3909
+ border-color: var(--input-time-border-success-color);
3910
+ border-width: var(--input-time-border-width-emphasis);
3911
+ }
3912
+
3913
+ .input-time:where([data-state=error]) .input-time-input {
3914
+ border-color: var(--input-time-border-error-color);
3915
+ border-width: var(--input-time-border-width-emphasis);
3916
+ }
3917
+
3918
+ .input-time:where([data-state=disabled]) .input-time-input,
3919
+ .input-time:where([data-readonly=true]) .input-time-input {
3920
+ border-color: var(--input-time-border-disabled-color);
3921
+ background-color: var(--input-time-surface-disabled-color);
3922
+ }
3923
+
3924
+ .input-time:where([data-priority=secondary][data-state=active]) .input-time-input,
3925
+ .input-time:where([data-priority=secondary][data-state=success]) .input-time-input,
3926
+ .input-time:where([data-priority=secondary][data-state=error]) .input-time-input {
3927
+ border-bottom-width: var(--input-time-border-width-emphasis);
3928
+ }
3929
+
3930
+ .input-time-fields-root {
3931
+ display: flex;
3932
+ align-items: center;
3933
+ height: 100%;
3934
+ width: 100%;
3935
+ color: var(--input-time-text-color);
3936
+ }
3937
+
3938
+ .input-time-fields-group {
3939
+ display: flex;
3940
+ align-items: center;
3941
+ gap: var(--input-time-field-gap);
3942
+ height: 100%;
3943
+ min-width: 0;
3944
+ color: var(--input-time-text-color);
3945
+ transform: translateY(var(--input-time-field-y-offset));
3946
+ }
3947
+ .input-time-fields-group > span {
3948
+ color: var(--input-time-separator-color);
3949
+ font-size: var(--input-time-font-size);
3950
+ line-height: var(--input-time-line-height);
3951
+ }
3952
+
3953
+ .input-time-field {
3954
+ box-sizing: border-box;
3955
+ width: var(--input-time-field-width);
3956
+ min-width: var(--input-time-field-width);
3957
+ height: var(--input-time-field-height);
3958
+ padding: 0;
3959
+ border: 0;
3960
+ background-color: transparent;
3961
+ color: var(--input-time-text-color);
3962
+ caret-color: var(--input-time-text-color);
3963
+ font-size: var(--input-time-font-size);
3964
+ line-height: var(--input-time-line-height);
3965
+ font-weight: var(--input-time-font-weight);
3966
+ letter-spacing: var(--input-time-letter-spacing);
3967
+ text-align: center;
3968
+ outline: none;
3969
+ box-shadow: none;
3970
+ }
3971
+ .input-time-field::placeholder {
3972
+ color: var(--input-time-placeholder-color);
3973
+ }
3974
+ .input-time-field:disabled {
3975
+ color: var(--input-time-text-disabled-color);
3976
+ cursor: default;
3977
+ }
3978
+
3979
+ .input-time-field:where(select) {
3980
+ width: var(--input-time-period-field-width);
3981
+ min-width: var(--input-time-period-field-width);
3982
+ appearance: none;
3983
+ text-align-last: center;
3984
+ }
3985
+
3986
+ .input-time-section {
3987
+ box-sizing: border-box;
3988
+ position: absolute;
3989
+ z-index: 1;
3990
+ top: 0;
3991
+ bottom: 0;
3992
+ display: flex;
3993
+ align-items: center;
3994
+ justify-content: center;
3995
+ width: var(--input-time-section-width);
3996
+ }
3997
+ .input-time-section:where([data-position=left]) {
3998
+ left: 0;
3999
+ width: var(--input-time-left-section-width);
4000
+ }
4001
+ .input-time-section:where([data-position=right]) {
4002
+ right: 0;
4003
+ justify-content: flex-end;
4004
+ padding-inline-end: var(--input-time-section-edge-gap);
4005
+ }
4006
+
4007
+ .input-time:where([data-icon-position=right][data-clearable=true]) .input-time-section:where([data-position=right]) {
4008
+ width: var(--input-time-section-width-with-clear);
4009
+ }
4010
+
4011
+ .input-time-section-group {
4012
+ display: flex;
4013
+ align-items: center;
4014
+ gap: var(--input-time-section-gap);
4015
+ }
4016
+
4017
+ .input-time-section-button {
4018
+ display: flex;
4019
+ align-items: center;
4020
+ justify-content: center;
4021
+ width: var(--input-time-section-button-size);
4022
+ height: var(--input-time-section-button-size);
4023
+ margin: 0;
4024
+ padding: 0;
4025
+ border: 0;
4026
+ border-radius: var(--input-time-section-button-radius);
4027
+ background-color: transparent;
4028
+ color: var(--input-time-icon-color);
4029
+ cursor: pointer;
4030
+ }
4031
+ .input-time-section-button:where([aria-disabled=true]) {
4032
+ color: var(--input-time-icon-disabled-color);
4033
+ cursor: default;
4034
+ }
4035
+
4036
+ .input-time-icon-graphic,
4037
+ .input-time-section-button svg {
4038
+ display: flex;
4039
+ width: var(--input-time-icon-size);
4040
+ height: var(--input-time-icon-size);
4041
+ }
4042
+
4043
+ .input-time-dropdown {
4044
+ position: absolute;
4045
+ z-index: 20;
4046
+ box-sizing: border-box;
4047
+ padding: var(--input-time-dropdown-padding);
4048
+ border: var(--input-time-dropdown-border-width) solid var(--input-time-dropdown-border-color);
4049
+ border-radius: var(--input-time-dropdown-radius);
4050
+ background-color: var(--input-time-dropdown-surface-color);
4051
+ box-shadow: var(--input-time-dropdown-shadow);
4052
+ }
4053
+
4054
+ .input-time-scrollarea {
4055
+ position: relative;
4056
+ min-width: var(--input-time-scrollarea-width);
4057
+ overflow: hidden;
4058
+ }
4059
+
4060
+ .input-time-scrollarea .mantine-ScrollArea-viewport {
4061
+ box-sizing: border-box;
4062
+ height: 100%;
4063
+ padding-inline-end: var(--input-time-scrollarea-gutter);
4064
+ scrollbar-gutter: stable;
4065
+ overflow: auto;
4066
+ }
4067
+
4068
+ .input-time-controls-list-group {
4069
+ display: flex;
4070
+ gap: var(--input-time-dropdown-group-gap);
4071
+ }
4072
+
4073
+ .input-time-controls-list {
4074
+ display: flex;
4075
+ flex-direction: column;
4076
+ gap: var(--input-time-option-gap);
4077
+ width: var(--input-time-option-min-width);
4078
+ }
4079
+
4080
+ .input-time-option,
4081
+ .input-time-preset-option {
4082
+ width: var(--input-time-option-min-width);
4083
+ min-width: var(--input-time-option-min-width);
4084
+ height: var(--input-time-option-height);
4085
+ border-radius: var(--input-time-option-radius);
4086
+ color: var(--input-time-option-color);
4087
+ font-size: var(--input-time-option-font-size);
4088
+ line-height: var(--input-time-option-line-height);
4089
+ font-weight: var(--input-time-option-font-weight);
4090
+ }
4091
+ .input-time-option:where([data-active]),
4092
+ .input-time-preset-option:where([data-active]) {
4093
+ background-color: var(--input-time-option-active-surface-color);
4094
+ color: var(--input-time-option-active-color);
4095
+ }
4096
+ .input-time-option:hover:where(:not([data-active])),
4097
+ .input-time-preset-option:hover:where(:not([data-active])) {
4098
+ background-color: var(--input-time-option-hover-surface-color);
4099
+ color: var(--input-time-option-hover-color);
4100
+ }
4101
+
4102
+ .input-time-presets-group {
4103
+ display: flex;
4104
+ flex-direction: column;
4105
+ gap: var(--input-time-option-gap);
4106
+ }
4107
+
4108
+ .input-time-presets-group-label {
4109
+ color: var(--input-time-presets-label-color);
4110
+ font-size: var(--input-time-presets-label-size);
4111
+ line-height: var(--input-time-presets-label-line-height);
4112
+ font-weight: var(--input-time-presets-label-weight);
4113
+ }
4114
+
3668
4115
  .input-address-container {
3669
4116
  width: 100%;
3670
4117
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uniai-fe/uds-primitives",
3
- "version": "0.6.15",
3
+ "version": "0.7.0",
4
4
  "description": "UNIAI Design System; Primitives Components Package",
5
5
  "type": "module",
6
6
  "private": false,
@@ -86,7 +86,7 @@
86
86
  "@radix-ui/react-tooltip": "^1.2.8",
87
87
  "@radix-ui/react-visually-hidden": "^1.2.4",
88
88
  "clsx": "^2.1.1",
89
- "dayjs": "^1.11.20",
89
+ "dayjs": "^1.11.21",
90
90
  "react-daum-postcode": "^4.0.0"
91
91
  },
92
92
  "devDependencies": {
@@ -95,7 +95,7 @@
95
95
  "@mantine/hooks": "^8.3.18",
96
96
  "@svgr/webpack": "^8.1.0",
97
97
  "@types/node": "^24.12.3",
98
- "@types/react": "^19.2.15",
98
+ "@types/react": "^19.2.16",
99
99
  "@types/react-dom": "^19.2.3",
100
100
  "@uniai-fe/eslint-config": "workspace:*",
101
101
  "@uniai-fe/next-devkit": "workspace:*",
@@ -104,8 +104,8 @@
104
104
  "@uniai-fe/util-functions": "workspace:*",
105
105
  "eslint": "^9.39.2",
106
106
  "prettier": "^3.8.3",
107
- "react-hook-form": "^7.76.0",
108
- "sass": "^1.99.0",
107
+ "react-hook-form": "^7.77.0",
108
+ "sass": "^1.100.0",
109
109
  "typescript": "5.9.3"
110
110
  }
111
111
  }
@@ -0,0 +1,4 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <circle cx="12" cy="12" r="8" stroke="currentColor" stroke-width="1.6"/>
3
+ <path d="M12 7.5V12L15.25 14.25" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -2,5 +2,6 @@
2
2
  @use "./styles/foundation.scss" as inputFoundation;
3
3
  @use "./styles/text.scss" as inputText;
4
4
  @use "./styles/date.scss" as inputDate;
5
+ @use "./styles/time.scss" as inputTime;
5
6
  @use "./styles/address.scss" as inputAddress;
6
7
  @use "./styles/file.scss" as inputFile;
@@ -1,6 +1,7 @@
1
1
  import { InputFoundation } from "./foundation";
2
2
  import { InputText } from "./text";
3
3
  import { InputDate } from "./date";
4
+ import { InputTime } from "./time";
4
5
  import { InputAddress } from "./address";
5
6
  import { InputFile } from "./file";
6
7
 
@@ -8,6 +9,7 @@ export const Input = {
8
9
  ...InputFoundation,
9
10
  Text: InputText,
10
11
  Date: InputDate,
12
+ Time: InputTime,
11
13
  Address: InputAddress,
12
14
  File: InputFile,
13
15
  };