@dataloop-ai/components 0.19.172 → 0.19.174

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.19.172",
3
+ "version": "0.19.174",
4
4
  "exports": {
5
5
  ".": "./index.ts",
6
6
  "./models": "./models.ts",
@@ -717,7 +717,7 @@ export default defineComponent({
717
717
  const onChange = (e: KeyboardEvent | Event) => {
718
718
  isInternalChange.value = true
719
719
  isMenuOpen.value = true
720
- updateSyntax()
720
+
721
721
  const target = e.target as HTMLElement
722
722
  let toEmit: string | number = target.innerText.replace(
723
723
  new RegExp(' ', 'g'),
@@ -735,28 +735,26 @@ export default defineComponent({
735
735
  input.value.innerHTML = trimmed
736
736
  .toString()
737
737
  .replace(/ /g, ' ')
738
- updateSyntax()
739
738
  setCaretAtTheEnd(input.value)
740
- return
741
- }
742
- /**
743
- * if the number ends with a dot followed by multiple zeros
744
- * then we should not replace the inputs value with the parsed number
745
- */
746
- if (
739
+ } else if (
740
+ /**
741
+ * if the number ends with a dot followed by multiple zeros
742
+ * then we should not replace the inputs value with the parsed number
743
+ */
747
744
  !toEmit.endsWith('.') &&
748
745
  !new RegExp(/\.\d*0+$/, 'g').test(toEmit)
749
746
  ) {
750
747
  input.value.innerHTML = String(Number(toEmit))
751
748
  .toString()
752
749
  .replace(/ /g, ' ')
753
- updateSyntax()
754
750
  setCaretAtTheEnd(input.value)
755
751
  }
756
752
 
757
753
  toEmit = Number(toEmit)
758
754
  }
759
755
 
756
+ updateSyntax()
757
+
760
758
  emit('input', toEmit, e)
761
759
  emit('update:model-value', toEmit)
762
760
  if (autoTrim.value) {
@@ -803,6 +801,9 @@ export default defineComponent({
803
801
  if (isSpecialWord(word)) {
804
802
  return `<span class="clickable" style="color: ${syntaxHighlightColor.value}">${word}</span>`
805
803
  }
804
+ if (word.startsWith('<')) {
805
+ return `<span>${word.replace('<', '&lt;')}</span>`
806
+ }
806
807
  return word
807
808
  })
808
809
  input.value.innerHTML = words.join(' ')
@@ -32,15 +32,13 @@
32
32
  :no-caps="item.noCaps"
33
33
  :is-active="modelValue === item.name"
34
34
  :font-size="fontSize"
35
+ :bordered="bordered"
35
36
  @click="handleTabClick"
36
37
  />
37
38
  </div>
38
39
  </tabs-wrapper>
39
- <div class="empty-space" />
40
- <slot
41
- name="top-right"
42
- :styles="topRightSlotStyles"
43
- />
40
+ <div :class="{ 'no-border-bottom': !bordered }" class="empty-space" />
41
+ <slot name="top-right" :styles="topRightSlotStyles" />
44
42
  </div>
45
43
  </template>
46
44
 
@@ -70,7 +68,8 @@ export default defineComponent({
70
68
  disabled: { type: Boolean, default: false },
71
69
  modelValue: { type: String, required: true },
72
70
  fontSize: { type: String, default: '18px' },
73
- gap: { type: String, default: '40px' }
71
+ gap: { type: String, default: '40px' },
72
+ bordered: { type: Boolean, default: true }
74
73
  },
75
74
  emits: ['update:model-value'],
76
75
  data() {
@@ -87,11 +86,13 @@ export default defineComponent({
87
86
  },
88
87
  computed: {
89
88
  topRightSlotStyles(): string {
90
- return `border-bottom: ${
91
- this.vertical
92
- ? 'inherit'
93
- : '1px solid var(--dl-color-separator)'
94
- };
89
+ let borderBottom = this.vertical
90
+ ? 'inherit'
91
+ : '1px solid var(--dl-color-separator)'
92
+ if (!this.bordered) {
93
+ borderBottom = 'unset'
94
+ }
95
+ return `border-bottom: ${borderBottom};
95
96
  padding-left: ${this.topRightSlotWidth ? this.gap : '0px'};
96
97
  `
97
98
  },
@@ -143,7 +144,7 @@ export default defineComponent({
143
144
  this.updatePosition()
144
145
  },
145
146
  unsubscribeListeners() {
146
- (this.$refs.dlTabsRef as HTMLElement)?.removeEventListener(
147
+ ;(this.$refs.dlTabsRef as HTMLElement)?.removeEventListener(
147
148
  'scroll',
148
149
  this.handleScroll
149
150
  )
@@ -247,4 +248,7 @@ export default defineComponent({
247
248
  .full-width {
248
249
  width: 100%;
249
250
  }
251
+ .no-border-bottom {
252
+ border-bottom: unset;
253
+ }
250
254
  </style>
@@ -49,7 +49,8 @@ export default defineComponent({
49
49
  showTooltip: { type: Boolean, default: false },
50
50
  tooltip: { type: String, default: null },
51
51
  tabindex: { type: String, default: '0' },
52
- fontSize: { type: String, default: '18px' }
52
+ fontSize: { type: String, default: '18px' },
53
+ bordered: { type: Boolean, default: true }
53
54
  },
54
55
  emits: ['click'],
55
56
  data() {
@@ -78,6 +79,8 @@ export default defineComponent({
78
79
 
79
80
  if (this.isActive) {
80
81
  classes = classes + ' dl-tab--active'
82
+ } else if (!this.bordered) {
83
+ classes = classes + ' dl-tab--no-border-bottom'
81
84
  }
82
85
 
83
86
  if (this.disabled) {
@@ -146,6 +149,9 @@ export default defineComponent({
146
149
  color: var(--dl-color-hover);
147
150
  border-color: var(--dl-color-hover);
148
151
  }
152
+ &--no-border-bottom {
153
+ border-bottom: unset;
154
+ }
149
155
  cursor: pointer;
150
156
  flex-grow: 1;
151
157
  }
@@ -17,6 +17,25 @@
17
17
  </dl-tab-panel>
18
18
  </dl-tab-panels>
19
19
 
20
+ With no border
21
+ <dl-tabs
22
+ v-model="selectedTab"
23
+ :items="tabItems"
24
+ :bordered="false"
25
+ @update:model-value="handleModelValueUpdate"
26
+ />
27
+ <div style="height: 4px" />
28
+ <dl-tab-panels v-model="selectedTab">
29
+ <dl-tab-panel
30
+ v-for="item in tabItems"
31
+ :key="item.name"
32
+ class="tabpanel"
33
+ :name="item.name"
34
+ >
35
+ <h1>{{ item.label }}</h1>
36
+ </dl-tab-panel>
37
+ </dl-tab-panels>
38
+
20
39
  <dl-tabs
21
40
  v-model="selectedTab"
22
41
  :items="tabItems"
@@ -41,11 +60,7 @@
41
60
  icon="icon-dl-refresh"
42
61
  label="Refresh"
43
62
  />
44
- <dl-button
45
- size="s"
46
- icon="icon-dl-pause"
47
- label="Pause"
48
- />
63
+ <dl-button size="s" icon="icon-dl-pause" label="Pause" />
49
64
  </div>
50
65
  </template>
51
66
  </dl-tabs>
@@ -86,11 +101,7 @@
86
101
  icon="icon-dl-refresh"
87
102
  label="Refresh"
88
103
  />
89
- <dl-button
90
- size="s"
91
- icon="icon-dl-pause"
92
- label="Pause"
93
- />
104
+ <dl-button size="s" icon="icon-dl-pause" label="Pause" />
94
105
  </div>
95
106
  </template>
96
107
  </dl-tabs>