@dataloop-ai/components 0.20.9 → 0.20.12

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dataloop-ai/components",
3
- "version": "0.20.9",
3
+ "version": "0.20.12",
4
4
  "exports": {
5
5
  ".": "./index.ts",
6
6
  "./models": "./models.ts",
@@ -23,7 +23,7 @@
23
23
  "check-only": "if grep -E -H -r --exclude-dir=.git --exclude-dir=node_modules --exclude=*.json --exclude=*.yml '^(describe|it).only' .; then echo 'Found only in test files' && exit 1; fi"
24
24
  },
25
25
  "dependencies": {
26
- "@dataloop-ai/icons": "^3.0.91",
26
+ "@dataloop-ai/icons": "^3.0.101",
27
27
  "@types/flat": "^5.0.2",
28
28
  "@types/lodash": "^4.14.184",
29
29
  "@types/sortablejs": "^1.15.7",
@@ -227,6 +227,7 @@ export default defineComponent({
227
227
  .text {
228
228
  padding-left: 10px;
229
229
  font-size: var(--dl-font-size-body);
230
+ line-height: normal;
230
231
  align-self: center;
231
232
  word-break: break-word;
232
233
  }
@@ -104,11 +104,15 @@ export default defineComponent({
104
104
  hideNoData: {
105
105
  type: Boolean,
106
106
  default: false
107
+ },
108
+ initialSelection: {
109
+ type: Object as PropType<DlLabelPickerItem>,
110
+ default: null
107
111
  }
108
112
  },
109
113
  emits: ['selected-label', 'click', 'focus', 'blur', 'clear'],
110
114
  setup(props, { emit, slots }) {
111
- const { items } = toRefs(props)
115
+ const { items, initialSelection } = toRefs(props)
112
116
 
113
117
  const columns: DlTableColumn[] = [
114
118
  {
@@ -124,9 +128,8 @@ export default defineComponent({
124
128
 
125
129
  const inputValue = ref('')
126
130
  const currentSelectedLabel = ref<DlLabelPickerItem>(
127
- items.value ? items.value[0] : null
131
+ (initialSelection?.value ?? items.value?.[0]) || null
128
132
  )
129
-
130
133
  const table = ref()
131
134
  const handleRowClick = (event: MouseEvent, item: DlLabelPickerItem) => {
132
135
  table.value.$el
@@ -203,9 +206,9 @@ export default defineComponent({
203
206
 
204
207
  onMounted(() => {
205
208
  nextTick(() => {
206
- if (items.value?.[0]?.identifier) {
209
+ if (currentSelectedLabel.value.identifier) {
207
210
  const target = table.value.$el.querySelector(
208
- `[data-label-picker-identifier="${items.value[0].identifier}"]`
211
+ `[data-label-picker-identifier="${currentSelectedLabel.value.identifier}"]`
209
212
  )
210
213
  target?.closest('tr')?.classList.add('selected')
211
214
  }
@@ -21,6 +21,7 @@
21
21
  :bg-color="bgColor"
22
22
  :hide="hide"
23
23
  :disabled="disabled"
24
+ :width="sidebarWidth"
24
25
  @step-click="$emit('set-step', $event)"
25
26
  />
26
27
  <div class="dl-stepper-content dl-stepper-content--slot">
@@ -137,6 +138,11 @@ export default defineComponent({
137
138
  required: false,
138
139
  default: '700px'
139
140
  },
141
+ sidebarWidth: {
142
+ type: String,
143
+ required: false,
144
+ default: 'fit-content'
145
+ },
140
146
  bgColor: {
141
147
  type: String,
142
148
  required: false,
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="sidebar">
2
+ <div class="sidebar" :style="cssVars">
3
3
  <dl-list v-if="!hide">
4
4
  <dl-list-item
5
5
  v-for="(step, index) in steps"
@@ -24,13 +24,13 @@
24
24
  <dl-item-section no-wrap>
25
25
  <span :class="stepClass(step)">
26
26
  <span v-if="!step.icon">{{ index + 1 }}. </span>
27
- <div>
28
- <span>
27
+ <div style="width: 94%">
28
+ <dl-ellipsis>
29
29
  {{ getStepTitle(step) }}
30
- </span>
31
- <span class="sidebar--subtitle">
30
+ </dl-ellipsis>
31
+ <dl-ellipsis class="sidebar--subtitle">
32
32
  {{ getStepSubtitle(step) }}
33
- </span>
33
+ </dl-ellipsis>
34
34
  </div>
35
35
  <dl-tooltip v-if="isStepDisabled(step)">
36
36
  {{ getStepDisabledTooltip(step) }}
@@ -46,7 +46,7 @@
46
46
  import { defineComponent, PropType } from 'vue-demi'
47
47
  import { DlListItem } from '../../../basic'
48
48
  import { DlItemSection, DlTooltip } from '../../../shared'
49
- import { DlList } from '../../../essential'
49
+ import { DlList, DlEllipsis } from '../../../essential'
50
50
  import { Step } from '../models'
51
51
 
52
52
  export default defineComponent({
@@ -55,7 +55,8 @@ export default defineComponent({
55
55
  DlList,
56
56
  DlListItem,
57
57
  DlItemSection,
58
- DlTooltip
58
+ DlTooltip,
59
+ DlEllipsis
59
60
  },
60
61
  props: {
61
62
  steps: {
@@ -68,9 +69,21 @@ export default defineComponent({
68
69
  default: 'dl-color-fill-third'
69
70
  },
70
71
  disabled: { type: Boolean, default: false },
71
- hide: { type: Boolean, default: false }
72
+ hide: { type: Boolean, default: false },
73
+ width: {
74
+ type: String,
75
+ required: false,
76
+ default: 'fit-content'
77
+ }
72
78
  },
73
79
  emits: ['step-click'],
80
+ computed: {
81
+ cssVars(): Record<string, string | number> {
82
+ return {
83
+ '--dl-stepper-sidebar-width': this.width
84
+ }
85
+ }
86
+ },
74
87
  methods: {
75
88
  endIcon(step: Step) {
76
89
  return {
@@ -142,6 +155,7 @@ export default defineComponent({
142
155
  .sidebar {
143
156
  display: flex;
144
157
  min-width: 250px;
158
+ width: var(--dl-stepper-sidebar-width);
145
159
  padding: 15px 0px;
146
160
  border-right: 1px solid var(--dl-color-separator);
147
161
  background-color: var(--dl-stepper-bg);
@@ -165,7 +179,6 @@ export default defineComponent({
165
179
  }
166
180
 
167
181
  &--subtitle {
168
- display: block;
169
182
  line-height: 1;
170
183
  font-size: var(--dl-font-size-body);
171
184
  color: var(--dl-color-lighter);
@@ -173,6 +186,7 @@ export default defineComponent({
173
186
 
174
187
  &--step {
175
188
  display: flex;
189
+ position: relative;
176
190
  gap: 3px;
177
191
  font-size: var(--dl-font-size-h4);
178
192
  line-height: 18px;
@@ -7,6 +7,7 @@
7
7
  title: '',
8
8
  icon: ''
9
9
  }"
10
+ :initial-selection="initialSelection"
10
11
  hide-bottom
11
12
  hide-no-data
12
13
  @selected-label="setSelectedEvent"
@@ -72,11 +73,12 @@ export default defineComponent({
72
73
  },
73
74
  setup() {
74
75
  const items = ref(rows)
76
+ const initialSelection = ref(rows[1])
75
77
  const lastSelected = ref<DlLabelPickerItem>(null)
76
78
  const setSelectedEvent = (item: DlLabelPickerItem) => {
77
79
  lastSelected.value = item
78
80
  }
79
- return { items, lastSelected, setSelectedEvent }
81
+ return { items, lastSelected, setSelectedEvent, initialSelection }
80
82
  }
81
83
  })
82
84
  </script>
@@ -5,6 +5,7 @@
5
5
  :hide-close-button="true"
6
6
  done-button-label="Create"
7
7
  width="calc(100vh-400px)"
8
+ sidebar-width="300px"
8
9
  header-title="Create New Task"
9
10
  :content-title="`${stepper.currentIndex + 1}. ${
10
11
  stepper.currentStep.value
@@ -24,10 +25,7 @@
24
25
  >
25
26
  <template #content-header="{ state }">
26
27
  <div style="display: flex; gap: 20px; align-items: center">
27
- <dl-typography
28
- size="h3"
29
- variant="h3"
30
- >
28
+ <dl-typography size="h3" variant="h3">
31
29
  {{
32
30
  `${stepper.currentIndex + 1}. ${
33
31
  stepper.currentStep.value
@@ -142,12 +140,16 @@ export default defineComponent({
142
140
  {
143
141
  value: 'general',
144
142
  title: 'general',
143
+ subtitle:
144
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas vitae massa porttitor, tempor ex vel, varius felis. ',
145
145
  warning: 'Some issues in the step',
146
146
  completed: true
147
147
  },
148
148
  {
149
149
  value: 'data',
150
150
  title: 'data',
151
+ subtitle:
152
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas vitae massa porttitor, tempor ex vel, varius felis. ',
151
153
  completed: true
152
154
  },
153
155
  {