@tekkare/auriga 0.1.147 → 0.1.148

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/module.json CHANGED
@@ -4,5 +4,5 @@
4
4
  "compatibility": {
5
5
  "nuxt": "^3.0.0"
6
6
  },
7
- "version": "0.1.147"
7
+ "version": "0.1.148"
8
8
  }
@@ -113,6 +113,36 @@
113
113
  :name="columnTypeNonProps[valIndex]"
114
114
  v-bind:value="value"
115
115
  ></slot>
116
+ <div v-else-if="autoCrop === true" class="display_auto_crop">
117
+ <p
118
+ :class="
119
+ toggleCrop !== null &&
120
+ toggleCrop.index === contIndex &&
121
+ toggleCrop.value === valIndex
122
+ ? 'text_cell'
123
+ : 'text_cell crop_text'
124
+ "
125
+ :id="`content_${contIndex}_${valIndex}`"
126
+ >
127
+ {{ value }}
128
+ </p>
129
+ <p
130
+ v-if="
131
+ hasReadMore.includes(`content_${contIndex}_${valIndex}`)
132
+ "
133
+ class="read_more"
134
+ @click="applyToggleCrop(contIndex, valIndex)"
135
+ >
136
+ {{
137
+ toggleCrop !== null
138
+ ? toggleCrop.index === contIndex &&
139
+ toggleCrop.value === valIndex
140
+ ? "Read less"
141
+ : "Read more"
142
+ : "Read more"
143
+ }}
144
+ </p>
145
+ </div>
116
146
  <p v-else>
117
147
  {{ value }}
118
148
  </p>
@@ -218,6 +248,7 @@ import argTooltip from "./argTooltip.vue";
218
248
  import argBtn from "./argBtn.vue";
219
249
  import argSortIcon from "./argSortIcon.vue";
220
250
  import {
251
+ onMounted,
221
252
  ref,
222
253
  computed,
223
254
  watch,
@@ -308,6 +339,10 @@ export default defineComponent({
308
339
  maxHeight: {
309
340
  type: [String, Number],
310
341
  default: "300"
342
+ },
343
+ autoCrop: {
344
+ type: Boolean,
345
+ default: false
311
346
  }
312
347
  },
313
348
  emits: ["changeInputValue"],
@@ -327,6 +362,8 @@ export default defineComponent({
327
362
  const savePageSize = ref(0);
328
363
  const showToggle = ref(false);
329
364
  const showLine = ref();
365
+ const toggleCrop = ref(null);
366
+ const hasReadMore = ref([]);
330
367
  watch(
331
368
  () => props.contents,
332
369
  (newContent) => {
@@ -625,6 +662,29 @@ export default defineComponent({
625
662
  savePageSize.value = props.pageSize;
626
663
  showToggle.value = props.toggleDisplay;
627
664
  }
665
+ onMounted(() => {
666
+ if (props.autoCrop) {
667
+ const textCells = document.querySelectorAll(".text_cell");
668
+ textCells.forEach((cell) => {
669
+ cell.classList.remove("crop_text");
670
+ const fullHeight = cell.clientHeight;
671
+ cell.classList.add("crop_text");
672
+ const originalHeight = cell.clientHeight;
673
+ if (fullHeight > originalHeight) {
674
+ hasReadMore.value.push(cell.id);
675
+ }
676
+ });
677
+ }
678
+ });
679
+ function applyToggleCrop(index, value) {
680
+ if (toggleCrop.value !== null) {
681
+ if (toggleCrop.value.index === index && toggleCrop.value.value === value) {
682
+ toggleCrop.value = null;
683
+ } else
684
+ toggleCrop.value = { index, value };
685
+ } else
686
+ toggleCrop.value = { index, value };
687
+ }
628
688
  return {
629
689
  sortCol,
630
690
  sortDir,
@@ -663,12 +723,15 @@ export default defineComponent({
663
723
  totalPages,
664
724
  getPlaceHolder,
665
725
  getHeight,
666
- sendSearch
726
+ sendSearch,
727
+ toggleCrop,
728
+ hasReadMore,
729
+ applyToggleCrop
667
730
  };
668
731
  }
669
732
  });
670
733
  </script>
671
734
 
672
735
  <style scoped>
673
- .empty_table{align-items:center;display:flex;justify-content:center;width:100%}.filter_tooltip{cursor:pointer}.sort_up_icon{position:relative;top:3px}.sort_down_icon{position:relative;top:-2px}.table_input{align-self:stretch!important;margin:0 24px!important;width:auto!important}.oip_column{display:table-cell;padding-left:0}.scroll_table .rcd_scrollTable{gap:8px;overflow-x:auto;padding-top:8px}td{font-size:14px}tr{position:relative}table{border-collapse:collapse;padding:0;width:100%}thead tr th{background-color:transparent;height:35px}td,th{padding:10px 24px}th,tr{height:43px;text-align:start}th{flex-grow:0;font-size:12px;font-weight:700;line-height:14px;order:0}td:last-child,th:last-child div.rcd-table-header{justify-content:end;text-align:end}.rcd-table-header{align-items:center;display:flex;flex-direction:row;margin-left:24px}.rcd-col-title{align-items:center;gap:4px}.rcd-col-title,.rcd-table-sort{display:flex;justify-content:center}.rcd-table-sort{cursor:pointer;flex-direction:column;-moz-text-align-last:right;text-align-last:right}.rcd-NA{color:var(--independance);font-style:italic;font-weight:400}.rcd-pagination{align-items:center;background:transparent;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-style:normal;font-weight:700;gap:10px;justify-content:center;line-height:normal;padding:10px 16px}.rcd-pagination:hover{color:var(--primary)!important}.rcd-pagination-navigate{cursor:pointer}.rcd-pagination-navigate:hover svg{color:var(--primary)!important}.rcd-current:hover{color:var(--white)!important}.rcd-datas{align-items:center;display:flex;gap:10px;margin:10px 10px 15px}.align-left{justify-content:left}.align-center{justify-content:center}.align-right,.rcd-rows{justify-content:right}.rcd-rows{align-items:center;display:flex}.rcd-current{background:var(--primary);box-shadow:4px 7px 12px 0 rgba(33,118,255,.2);color:var(--white)}.hideInput{display:none;visibility:hidden}.showInput{display:flex;visibility:visible}.rcd-search{cursor:pointer;margin-right:5px}.column_align.left{justify-content:left!important;text-align:left!important}.column_align.center{justify-content:center!important;text-align:center!important}.column_align.right{justify-content:right!important;text-align:right!important}.show_full_table{align-items:center;display:flex;justify-content:center;width:100%}.flex-table{align-items:flex-start;display:flex;flex-direction:column;gap:12px;width:100%}.rcd_scrollTable{width:100%}.more_section{padding:24px;text-align:start!important;width:100%}.more_row{border-bottom:1px solid var(--light,#ececf2);border-top:1px solid var(--light,#ececf2)}.grey_bg,.grey_bg>td{background:var(--demi-fond)!important}.white_bg,.white_bg>td{background:var(--white)!important}.icon-show-more{cursor:pointer;transition:transform .3s}.icon-show-more:hover,.icon_rotate{color:var(--primary)!important}.icon_rotate{transform:rotate(90deg)}.scroll_table .rcd_scrollTable table thead,.scroll_table .rcd_scrollTable table thead tr,.scroll_table .rcd_scrollTable table thead tr th{position:sticky!important;top:0!important}.scroll_table .rcd_scrollTable thead{background:var(--white)!important;z-index:10}.scroll_table .rcd_scrollTable{overflow-y:scroll;padding-top:0!important}.full{width:100%}.hidden{display:none!important}.scroll_table .rcd_scrollTable::-webkit-scrollbar{height:5px!important;width:5px!important}.modal_content::-webkit-scrollbar-thumb,.scroll_table .rcd_scrollTable::-webkit-scrollbar-thumb{background:var(--medium);border-radius:12px!important}.modal_content::-webkit-scrollbar-thumb:hover,.scroll_table .rcd_scrollTable::-webkit-scrollbar-thumb:hover{background:var(--medium)!important}
736
+ .empty_table{align-items:center;display:flex;justify-content:center;width:100%}.filter_tooltip{cursor:pointer}.sort_up_icon{position:relative;top:3px}.sort_down_icon{position:relative;top:-2px}.table_input{align-self:stretch!important;margin:0 24px!important;width:auto!important}.oip_column{display:table-cell;padding-left:0}.scroll_table .rcd_scrollTable{gap:8px;overflow-x:auto;padding-top:8px}td{font-size:14px}tr{position:relative}table{border-collapse:collapse;padding:0;width:100%}thead tr th{background-color:transparent;height:35px}td,th{padding:10px 24px}th,tr{height:43px;text-align:start}th{flex-grow:0;font-size:12px;font-weight:700;line-height:14px;order:0}td:last-child,th:last-child div.rcd-table-header{justify-content:end;text-align:end}.rcd-table-header{align-items:center;display:flex;flex-direction:row;margin-left:24px}.rcd-col-title{align-items:center;gap:4px}.rcd-col-title,.rcd-table-sort{display:flex;justify-content:center}.rcd-table-sort{cursor:pointer;flex-direction:column;-moz-text-align-last:right;text-align-last:right}.rcd-NA{color:var(--independance);font-style:italic;font-weight:400}.rcd-pagination{align-items:center;background:transparent;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-style:normal;font-weight:700;gap:10px;justify-content:center;line-height:normal;padding:10px 16px}.rcd-pagination:hover{color:var(--primary)!important}.rcd-pagination-navigate{cursor:pointer}.rcd-pagination-navigate:hover svg{color:var(--primary)!important}.rcd-current:hover{color:var(--white)!important}.rcd-datas{align-items:center;display:flex;gap:10px;margin:10px 10px 15px}.align-left{justify-content:left}.align-center{justify-content:center}.align-right,.rcd-rows{justify-content:right}.rcd-rows{align-items:center;display:flex}.rcd-current{background:var(--primary);box-shadow:4px 7px 12px 0 rgba(33,118,255,.2);color:var(--white)}.hideInput{display:none;visibility:hidden}.showInput{display:flex;visibility:visible}.rcd-search{cursor:pointer;margin-right:5px}.column_align.left{justify-content:left!important;text-align:left!important}.column_align.center{justify-content:center!important;text-align:center!important}.column_align.right{justify-content:right!important;text-align:right!important}.show_full_table{align-items:center;display:flex;justify-content:center;width:100%}.flex-table{align-items:flex-start;display:flex;flex-direction:column;gap:12px;width:100%}.rcd_scrollTable{width:100%}.more_section{padding:24px;text-align:start!important;width:100%}.more_row{border-bottom:1px solid var(--light,#ececf2);border-top:1px solid var(--light,#ececf2)}.grey_bg,.grey_bg>td{background:var(--demi-fond)!important}.white_bg,.white_bg>td{background:var(--white)!important}.icon-show-more{cursor:pointer;transition:transform .3s}.icon-show-more:hover,.icon_rotate{color:var(--primary)!important}.icon_rotate{transform:rotate(90deg)}.scroll_table .rcd_scrollTable table thead,.scroll_table .rcd_scrollTable table thead tr,.scroll_table .rcd_scrollTable table thead tr th{position:sticky!important;top:0!important}.scroll_table .rcd_scrollTable thead{background:var(--white)!important;z-index:10}.scroll_table .rcd_scrollTable{overflow-y:scroll;padding-top:0!important}.full{width:100%}.hidden{display:none!important}.scroll_table .rcd_scrollTable::-webkit-scrollbar{height:5px!important;width:5px!important}.modal_content::-webkit-scrollbar-thumb,.scroll_table .rcd_scrollTable::-webkit-scrollbar-thumb{background:var(--medium);border-radius:12px!important}.modal_content::-webkit-scrollbar-thumb:hover,.scroll_table .rcd_scrollTable::-webkit-scrollbar-thumb:hover{background:var(--medium)!important}.crop_text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.read_more{color:var(--primary);cursor:pointer;text-decoration:underline}.display_auto_crop{display:flex;flex-direction:column;gap:8px}
674
737
  </style>
@@ -152,6 +152,10 @@ declare const _default: import("vue").DefineComponent<{
152
152
  type: (StringConstructor | NumberConstructor)[];
153
153
  default: string;
154
154
  };
155
+ autoCrop: {
156
+ type: BooleanConstructor;
157
+ default: boolean;
158
+ };
155
159
  }, {
156
160
  sortCol: import("vue").Ref<any>;
157
161
  sortDir: import("vue").Ref<any>;
@@ -191,6 +195,9 @@ declare const _default: import("vue").DefineComponent<{
191
195
  getPlaceHolder: import("vue").ComputedRef<string>;
192
196
  getHeight: import("vue").ComputedRef<string>;
193
197
  sendSearch: () => void;
198
+ toggleCrop: import("vue").Ref<any>;
199
+ hasReadMore: import("vue").Ref<string[]>;
200
+ applyToggleCrop: (index: number, value: number) => void;
194
201
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "changeInputValue"[], "changeInputValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
195
202
  heads: {
196
203
  type: {
@@ -345,6 +352,10 @@ declare const _default: import("vue").DefineComponent<{
345
352
  type: (StringConstructor | NumberConstructor)[];
346
353
  default: string;
347
354
  };
355
+ autoCrop: {
356
+ type: BooleanConstructor;
357
+ default: boolean;
358
+ };
348
359
  }>> & {
349
360
  onChangeInputValue?: ((...args: any[]) => any) | undefined;
350
361
  }, {
@@ -365,5 +376,6 @@ declare const _default: import("vue").DefineComponent<{
365
376
  loaderType: string;
366
377
  fullTableScroll: boolean;
367
378
  maxHeight: string | number;
379
+ autoCrop: boolean;
368
380
  }, {}>;
369
381
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tekkare/auriga",
3
- "version": "0.1.147",
3
+ "version": "0.1.148",
4
4
  "description": "Aurgia is a UI kit developped by Tekkare",
5
5
  "license": "MIT",
6
6
  "type": "module",