vue-laravel-crud 1.7.21 → 1.8.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.
@@ -12532,8 +12532,7 @@ Plugin.install = function (Vue, options) {
12532
12532
 
12533
12533
  if (typeof window !== 'undefined' && window.Vue) {
12534
12534
  window.Vue.use(Plugin);
12535
- }var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}var css = "tr td[data-v-4d8afc06]:last-child,\ntr td[data-v-4d8afc06]:first-child {\n width: 1%;\n white-space: nowrap; }\n\n.crud-pagination[data-v-4d8afc06] {\n display: flex;\n align-items: center;\n width: 100%;\n justify-content: center;\n margin-top: 1rem; }\n\n.crud-header[data-v-4d8afc06] {\n display: flex;\n justify-content: space-between;\n max-height: 3rem; }\n .crud-header[data-v-4d8afc06] .crud-title[data-v-4d8afc06] {\n margin: 0; }\n .crud-header[data-v-4d8afc06] .crud-search[data-v-4d8afc06] {\n max-width: 15rem; }\n .crud-header[data-v-4d8afc06] .crud-search[data-v-4d8afc06] .btn[data-v-4d8afc06] {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-top-right-radius: 0.375rem;\n border-bottom-right-radius: 0.375rem; }\n .crud-header[data-v-4d8afc06] .crud-search[data-v-4d8afc06] .btn[data-v-4d8afc06].open[data-v-4d8afc06] {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0; }\n .crud-header[data-v-4d8afc06] .table-options[data-v-4d8afc06] {\n margin-bottom: 1rem;\n display: flex;\n align-items: center;\n justify-content: flex-end; }\n\n.custom-control[data-v-4d8afc06] {\n position: relative; }\n\n@media (min-width: 992px) {\n .table[data-v-4d8afc06] {\n table-layout: auto; }\n .table[data-v-4d8afc06] tbody[data-v-4d8afc06] td[data-v-4d8afc06] {\n overflow: scroll;\n -ms-overflow-style: none;\n /* IE and Edge */\n scrollbar-width: none;\n /* Firefox */ }\n .table[data-v-4d8afc06] tbody[data-v-4d8afc06] td[data-v-4d8afc06]::-webkit-scrollbar {\n display: none; } }\n";
12536
- n(css, {});function normalizeComponent (
12535
+ }function normalizeComponent (
12537
12536
  scriptExports,
12538
12537
  render,
12539
12538
  staticRenderFns,
@@ -12624,12 +12623,115 @@ n(css, {});function normalizeComponent (
12624
12623
  exports: scriptExports,
12625
12624
  options: options
12626
12625
  }
12627
- }var _sfc_main = {
12626
+ }var _sfc_main$1 = {
12627
+ props: {
12628
+ item: Object,
12629
+ columns: Array,
12630
+ index: Number,
12631
+ itemClass: {
12632
+ type: String,
12633
+ default: 'item'
12634
+ },
12635
+ cardClass: String,
12636
+ cardHideFooter: Boolean,
12637
+ itemValue: Function,
12638
+ getStateValue: Function,
12639
+ getArrayValue: Function,
12640
+ showItem: Function,
12641
+ updateItem: Function,
12642
+ removeItem: Function
12643
+ }
12644
+ };
12645
+ var _sfc_render$1 = function render() {
12646
+ var _vm = this,
12647
+ _c = _vm._self._c;
12648
+ return _c('div', {
12649
+ class: _vm.itemClass
12650
+ }, [_c('b-card', {
12651
+ staticClass: "mb-2 card-crud",
12652
+ class: _vm.cardClass,
12653
+ attrs: {
12654
+ "title": _vm.item.title,
12655
+ "tag": "article",
12656
+ "hide-footer": _vm.cardHideFooter
12657
+ },
12658
+ scopedSlots: _vm._u([{
12659
+ key: "footer",
12660
+ fn: function fn() {
12661
+ return [_c('b-button-group', [_vm._t("rowAction", function () {
12662
+ return [_c('b-button', {
12663
+ attrs: {
12664
+ "variant": "primary"
12665
+ },
12666
+ on: {
12667
+ "click": function click($event) {
12668
+ return _vm.showItem(_vm.item.id, _vm.index);
12669
+ }
12670
+ }
12671
+ }, [_c('b-icon-eye')], 1), _c('b-button', {
12672
+ attrs: {
12673
+ "variant": "secondary"
12674
+ },
12675
+ on: {
12676
+ "click": function click($event) {
12677
+ return _vm.updateItem(_vm.item.id, _vm.index);
12678
+ }
12679
+ }
12680
+ }, [_c('b-icon-pencil')], 1), _c('b-button', {
12681
+ attrs: {
12682
+ "variant": "danger"
12683
+ },
12684
+ on: {
12685
+ "click": function click($event) {
12686
+ return _vm.removeItem(_vm.item.id, _vm.index);
12687
+ }
12688
+ }
12689
+ }, [_c('b-icon-trash')], 1)];
12690
+ }, {
12691
+ "item": _vm.item,
12692
+ "index": _vm.index,
12693
+ "showItem": _vm.showItem,
12694
+ "updateItem": _vm.updateItem,
12695
+ "removeItem": _vm.removeItem
12696
+ })], 2)];
12697
+ },
12698
+ proxy: true
12699
+ }], null, true)
12700
+ }, [_vm._t("card", function () {
12701
+ return _vm._l(_vm.columns, function (column, indexc) {
12702
+ return _c('div', {
12703
+ key: indexc
12704
+ }, [column.type !== 'actions' ? _c('b-card-text', [_vm._v(" " + _vm._s(column.label) + ": "), _vm._t('cell-' + column.prop, function () {
12705
+ return [column.type === 'boolean' ? _c('span', [_vm.itemValue(column, _vm.item) ? _c('b-badge', {
12706
+ attrs: {
12707
+ "variant": "success"
12708
+ }
12709
+ }, [_c('b-icon-check-circle')], 1) : _c('b-badge', {
12710
+ attrs: {
12711
+ "variant": "danger"
12712
+ }
12713
+ }, [_c('b-icon-x-circle')], 1)], 1) : column.type === 'date' ? _c('span', [_vm._v(" " + _vm._s(_vm.itemValue(column, _vm.item)) + " ")]) : column.type === 'state' ? _c('span', [_vm._v(" " + _vm._s(_vm.getStateValue(_vm.itemValue(column, _vm.item), column.options)) + " ")]) : column.type === 'array' ? _c('span', [_vm._v(" " + _vm._s(_vm.getArrayValue(_vm.itemValue(column, _vm.item), column.displayProp, column.options)) + " ")]) : _c('span', [_vm._v(" " + _vm._s(_vm.itemValue(column, _vm.item)) + " ")])];
12714
+ }, {
12715
+ "item": _vm.item,
12716
+ "index": _vm.index,
12717
+ "itemindex": _vm.index,
12718
+ "columnindex": indexc
12719
+ })], 2) : _vm._e()], 1);
12720
+ });
12721
+ }, {
12722
+ "item": _vm.item
12723
+ })], 2)], 1);
12724
+ };
12725
+ var _sfc_staticRenderFns$1 = [];
12726
+ var __component__$1 = /*#__PURE__*/normalizeComponent(_sfc_main$1, _sfc_render$1, _sfc_staticRenderFns$1, false, null, null, null, null);
12727
+ var ItemCard = __component__$1.exports;var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}var css = "tr td[data-v-ce8ebda1]:last-child,\ntr td[data-v-ce8ebda1]:first-child {\n width: 1%;\n white-space: nowrap; }\n\n.crud-pagination[data-v-ce8ebda1] {\n display: flex;\n align-items: center;\n width: 100%;\n justify-content: center;\n margin-top: 1rem; }\n\n.crud-header[data-v-ce8ebda1] {\n display: flex;\n justify-content: space-between;\n max-height: 3rem; }\n .crud-header[data-v-ce8ebda1] .crud-title[data-v-ce8ebda1] {\n margin: 0; }\n .crud-header[data-v-ce8ebda1] .crud-search[data-v-ce8ebda1] {\n max-width: 15rem; }\n .crud-header[data-v-ce8ebda1] .crud-search[data-v-ce8ebda1] .btn[data-v-ce8ebda1] {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n border-top-right-radius: 0.375rem;\n border-bottom-right-radius: 0.375rem; }\n .crud-header[data-v-ce8ebda1] .crud-search[data-v-ce8ebda1] .btn[data-v-ce8ebda1].open[data-v-ce8ebda1] {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0; }\n .crud-header[data-v-ce8ebda1] .table-options[data-v-ce8ebda1] {\n margin-bottom: 1rem;\n display: flex;\n align-items: center;\n justify-content: flex-end; }\n\n.custom-control[data-v-ce8ebda1] {\n position: relative; }\n\n@media (min-width: 992px) {\n .table[data-v-ce8ebda1] {\n table-layout: auto; }\n .table[data-v-ce8ebda1] tbody[data-v-ce8ebda1] td[data-v-ce8ebda1] {\n overflow: scroll;\n -ms-overflow-style: none;\n /* IE and Edge */\n scrollbar-width: none;\n /* Firefox */ }\n .table[data-v-ce8ebda1] tbody[data-v-ce8ebda1] td[data-v-ce8ebda1]::-webkit-scrollbar {\n display: none; } }\n";
12728
+ n(css, {});var _sfc_main = {
12628
12729
  name: "VueLaravelCrud",
12629
12730
  components: {
12630
12731
  draggable: draggable,
12631
12732
  InfiniteLoading: InfiniteLoading,
12632
- VueMasonry: Plugin
12733
+ VueMasonry: Plugin,
12734
+ ItemCard: ItemCard
12633
12735
  },
12634
12736
  data: function data() {
12635
12737
  return {
@@ -12660,7 +12762,8 @@ n(css, {});function normalizeComponent (
12660
12762
  displayModes: {
12661
12763
  MODE_TABLE: 1,
12662
12764
  MODE_CARDS: 2,
12663
- MODE_CUSTOM: 3
12765
+ MODE_CUSTOM: 3,
12766
+ MODE_KANBAN: 4
12664
12767
  },
12665
12768
  infiniteScrollKey: 1,
12666
12769
  optionsLoaded: false,
@@ -15047,83 +15150,57 @@ var _sfc_render = function render() {
15047
15150
  return _c('div', {
15048
15151
  key: index,
15049
15152
  staticClass: "item"
15050
- }, [_c('b-card', {
15051
- staticClass: "mb-2 card-crud",
15052
- class: _vm.cardClass,
15053
- attrs: {
15054
- "title": item.title,
15055
- "tag": "article",
15056
- "hideFooter": _vm.cardHideFooter
15057
- },
15058
- scopedSlots: _vm._u([{
15059
- key: "footer",
15060
- fn: function fn() {
15061
- return [_c('b-button-group', [_vm._t("rowAction", function () {
15062
- return [_c('b-button', {
15063
- attrs: {
15064
- "variant": "primary"
15065
- },
15066
- on: {
15067
- "click": function click($event) {
15068
- return _vm.showItem(item.id, index);
15069
- }
15070
- }
15071
- }, [_c('b-icon-eye')], 1), _c('b-button', {
15072
- attrs: {
15073
- "variant": "secondary"
15074
- },
15075
- on: {
15076
- "click": function click($event) {
15077
- return _vm.updateItem(item.id, index);
15078
- }
15079
- }
15080
- }, [_c('b-icon-pencil')], 1), _c('b-button', {
15081
- attrs: {
15082
- "variant": "danger"
15083
- },
15084
- on: {
15085
- "click": function click($event) {
15086
- return _vm.removeItem(item.id, index);
15087
- }
15088
- }
15089
- }, [_c('b-icon-trash')], 1)];
15090
- }, {
15153
+ }, [_vm._t("card", function () {
15154
+ return _vm._l(_vm.itemsList, function (item, index) {
15155
+ return _c('ItemCard', {
15156
+ key: index,
15157
+ attrs: {
15091
15158
  "item": item,
15159
+ "columns": _vm.columns,
15092
15160
  "index": index,
15161
+ "cardClass": _vm.cardClass,
15162
+ "cardHideFooter": _vm.cardHideFooter,
15163
+ "itemValue": _vm.itemValue,
15164
+ "getStateValue": _vm.getStateValue,
15165
+ "getArrayValue": _vm.getArrayValue,
15093
15166
  "showItem": _vm.showItem,
15094
15167
  "updateItem": _vm.updateItem,
15095
15168
  "removeItem": _vm.removeItem
15096
- })], 2)];
15097
- },
15098
- proxy: true
15099
- }], null, true)
15100
- }, [_vm._t("card", function () {
15101
- return _vm._l(_vm.columns, function (column, indexc) {
15102
- return _c('div', {
15103
- key: indexc
15104
- }, [column.type != 'actions' ? _c('b-card-text', [_vm._v(_vm._s(column.label) + ": "), _vm._t('cell-' + column.prop, function () {
15105
- return [column.type == 'boolean' ? _c('span', [_vm.itemValue(column, item) == 'true' || _vm.itemValue(column, item) == 1 || _vm.itemValue(column, item) == '1' ? _c('b-badge', {
15106
- attrs: {
15107
- "variant": "success"
15108
- }
15109
- }, [_c('b-icon-check-circle')], 1) : _vm._e(), !_vm.itemValue(column, item) || _vm.itemValue(column, item) == '0' || _vm.itemValue(column, item) == 'false' ? _c('b-badge', {
15110
- attrs: {
15111
- "variant": "danger"
15112
- }
15113
- }, [_c('b-icon-x-circle')], 1) : _vm._e()], 1) : column.type == 'date' ? _c('span', [_vm._v(" " + _vm._s(_vm.itemValue(column, item)) + " ")]) : column.type == 'state' ? _c('span', [_vm._v(" " + _vm._s(_vm.getStateValue(_vm.itemValue(column, item), column.options)) + " ")]) : column.type == 'array' ? _c('span', [_vm._v(" " + _vm._s(_vm.getArrayValue(_vm.itemValue(column, item), column.displayProp, column.options)) + " ")]) : _c('span', [_vm._v(" " + _vm._s(_vm.itemValue(column, item)) + " ")])];
15114
- }, {
15115
- "item": item,
15116
- "index": index,
15117
- "itemindex": index,
15118
- "columnindex": indexc
15119
- })], 2) : _vm._e()], 1);
15169
+ }
15170
+ });
15120
15171
  });
15121
15172
  }, {
15122
15173
  "item": item
15123
- })], 2)], 1);
15174
+ })], 2);
15124
15175
  }), 0)], 1), !_vm.loading && _vm.items && _vm.items.length == 0 && !_vm.infiniteScroll ? _c('p', {
15125
15176
  staticClass: "p-3"
15126
- }, [_vm._v(" " + _vm._s(_vm.messageEmptyResults) + " ")]) : _vm._e()], 1) : _vm._e(), _vm.displayMode == _vm.displayModes.MODE_CUSTOM ? _c('div', [_c('div', {
15177
+ }, [_vm._v(" " + _vm._s(_vm.messageEmptyResults) + " ")]) : _vm._e()], 1) : _vm._e(), _vm.displayMode == _vm.displayModes.MODE_KANBAN ? _c('div', _vm._l(_vm.itemsList, function (item, index) {
15178
+ return _c('div', {
15179
+ key: index,
15180
+ staticClass: "item"
15181
+ }, [_vm._t("card", function () {
15182
+ return _vm._l(_vm.itemsList, function (item, index) {
15183
+ return _c('ItemCard', {
15184
+ key: index,
15185
+ attrs: {
15186
+ "item": item,
15187
+ "columns": _vm.columns,
15188
+ "index": index,
15189
+ "cardClass": _vm.cardClass,
15190
+ "cardHideFooter": _vm.cardHideFooter,
15191
+ "itemValue": _vm.itemValue,
15192
+ "getStateValue": _vm.getStateValue,
15193
+ "getArrayValue": _vm.getArrayValue,
15194
+ "showItem": _vm.showItem,
15195
+ "updateItem": _vm.updateItem,
15196
+ "removeItem": _vm.removeItem
15197
+ }
15198
+ });
15199
+ });
15200
+ }, {
15201
+ "item": item
15202
+ })], 2);
15203
+ }), 0) : _vm._e(), _vm.displayMode == _vm.displayModes.MODE_CUSTOM ? _c('div', [_c('div', {
15127
15204
  class: _vm.listContainerClass
15128
15205
  }, [!_vm.loading && _vm.items && _vm.items.length == 0 && !_vm.infiniteScroll ? _c('p', {
15129
15206
  staticClass: "p-3"
@@ -15404,7 +15481,7 @@ var _sfc_render = function render() {
15404
15481
  }) : _vm._e()], 2) : _vm._e()], 1);
15405
15482
  };
15406
15483
  var _sfc_staticRenderFns = [];
15407
- var __component__ = /*#__PURE__*/normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, "4d8afc06", null, null);
15484
+ var __component__ = /*#__PURE__*/normalizeComponent(_sfc_main, _sfc_render, _sfc_staticRenderFns, false, null, "ce8ebda1", null, null);
15408
15485
  var component$1 = __component__.exports;// Import vue component
15409
15486
 
15410
15487
  // Default export is installable instance of component.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vue-laravel-crud",
3
- "version": "1.7.21",
3
+ "version": "1.8.0",
4
4
  "description": "",
5
5
  "homepage": "https://github.com/clonixdev/vue-laravel-crud",
6
6
  "main": "dist/vue-laravel-crud.ssr.js",
@@ -0,0 +1,65 @@
1
+ <template>
2
+ <div :class="itemClass">
3
+ <b-card :title="item.title" tag="article" class="mb-2 card-crud" :class="cardClass" :hide-footer="cardHideFooter">
4
+ <slot name="card" v-bind:item="item">
5
+ <div v-for="(column, indexc) in columns" :key="indexc">
6
+ <b-card-text v-if="column.type !== 'actions'">
7
+ {{ column.label }}:
8
+ <slot :name="'cell-' + column.prop" v-bind:item="item" v-bind:index="index" v-bind:itemindex="index"
9
+ v-bind:columnindex="indexc">
10
+ <span v-if="column.type === 'boolean'">
11
+ <b-badge variant="success" v-if="itemValue(column, item)"><b-icon-check-circle></b-icon-check-circle></b-badge>
12
+ <b-badge variant="danger" v-else><b-icon-x-circle></b-icon-x-circle></b-badge>
13
+ </span>
14
+ <span v-else-if="column.type === 'date'">
15
+ {{ itemValue(column, item) }}
16
+ </span>
17
+ <span v-else-if="column.type === 'state'">
18
+ {{ getStateValue(itemValue(column, item), column.options) }}
19
+ </span>
20
+ <span v-else-if="column.type === 'array'">
21
+ {{ getArrayValue(itemValue(column, item), column.displayProp, column.options) }}
22
+ </span>
23
+ <span v-else>
24
+ {{ itemValue(column, item) }}
25
+ </span>
26
+ </slot>
27
+ </b-card-text>
28
+ </div>
29
+ </slot>
30
+ <template v-slot:footer>
31
+ <b-button-group>
32
+ <slot name="rowAction" v-bind:item="item" v-bind:index="index" v-bind:showItem="showItem"
33
+ v-bind:updateItem="updateItem" v-bind:removeItem="removeItem">
34
+ <b-button variant="primary" @click="showItem(item.id, index)"><b-icon-eye></b-icon-eye></b-button>
35
+ <b-button variant="secondary" @click="updateItem(item.id, index)"><b-icon-pencil></b-icon-pencil></b-button>
36
+ <b-button variant="danger" @click="removeItem(item.id, index)"><b-icon-trash></b-icon-trash></b-button>
37
+ </slot>
38
+ </b-button-group>
39
+ </template>
40
+ </b-card>
41
+ </div>
42
+ </template>
43
+
44
+ <script>
45
+ export default {
46
+ props: {
47
+ item: Object,
48
+ columns: Array,
49
+ index: Number,
50
+ itemClass: {
51
+ type: String,
52
+ default: 'item',
53
+ },
54
+ cardClass: String,
55
+ cardHideFooter: Boolean,
56
+ itemValue: Function,
57
+ getStateValue: Function,
58
+ getArrayValue: Function,
59
+ showItem: Function,
60
+ updateItem: Function,
61
+ removeItem: Function,
62
+ },
63
+ };
64
+ </script>
65
+
@@ -3,6 +3,7 @@ import draggable from "vuedraggable";
3
3
  import moment from "moment";
4
4
  import InfiniteLoading from 'vue-infinite-loading';
5
5
  import VueMasonry from 'vue-masonry-css'
6
+ import ItemCard from "./ItemCard.vue";
6
7
 
7
8
 
8
9
 
@@ -11,7 +12,8 @@ export default /*#__PURE__*/ {
11
12
  components: {
12
13
  draggable,
13
14
  InfiniteLoading,
14
- VueMasonry
15
+ VueMasonry,
16
+ ItemCard
15
17
  },
16
18
  data() {
17
19
  return {
@@ -46,6 +48,7 @@ export default /*#__PURE__*/ {
46
48
  MODE_TABLE: 1,
47
49
  MODE_CARDS: 2,
48
50
  MODE_CUSTOM: 3,
51
+ MODE_KANBAN: 4
49
52
  },
50
53
  infiniteScrollKey: 1,
51
54
  optionsLoaded: false,
@@ -1956,67 +1959,24 @@ export default /*#__PURE__*/ {
1956
1959
  <masonry
1957
1960
  :cols="{ default: 12 / colLg, 1400: 12 / colXl, 1200: 12 / colLg, 1000: 12 / colMd, 700: 12 / colSm, 400: 12 / colXs }"
1958
1961
  :gutter="{ default: '15px', 700: '15px' }">
1959
-
1960
1962
  <div v-for="(item, index) in itemsList" v-bind:key="index" class="item">
1961
- <b-card :title="item.title" tag="article" class="mb-2 card-crud" :class="cardClass"
1962
- :hideFooter="cardHideFooter">
1963
- <slot name="card" v-bind:item="item">
1964
- <div v-for="(column, indexc) in columns" :key="indexc">
1965
- <b-card-text v-if="column.type != 'actions'">{{ column.label }}:
1966
- <slot :name="'cell-' + column.prop" v-bind:item="item" v-bind:index="index" v-bind:itemindex="index"
1967
- v-bind:columnindex="indexc">
1968
- <span v-if="column.type == 'boolean'">
1969
- <b-badge variant="success" v-if="itemValue(column, item) == 'true' ||
1970
- itemValue(column, item) == 1 ||
1971
- itemValue(column, item) == '1'
1972
- "><b-icon-check-circle></b-icon-check-circle></b-badge>
1973
- <b-badge variant="danger" v-if="!itemValue(column, item) ||
1974
- itemValue(column, item) == '0' ||
1975
- itemValue(column, item) == 'false'
1976
- "><b-icon-x-circle></b-icon-x-circle></b-badge>
1977
- </span>
1978
- <span v-else-if="column.type == 'date'">
1979
- {{ itemValue(column, item) }}
1980
- </span>
1981
- <span v-else-if="column.type == 'state'">
1982
- {{
1983
- getStateValue(itemValue(column, item), column.options)
1984
- }}
1985
- </span>
1986
- <span v-else-if="column.type == 'array'">
1987
- {{
1988
- getArrayValue(
1989
- itemValue(column, item),
1990
- column.displayProp,
1991
- column.options
1992
- )
1993
- }}
1994
- </span>
1995
- <span v-else>
1996
- {{ itemValue(column, item) }}
1997
- </span>
1998
- </slot>
1999
- </b-card-text>
2000
- </div>
1963
+ <slot name="card" v-bind:item="item">
1964
+ <ItemCard
1965
+ v-for="(item, index) in itemsList"
1966
+ :key="index"
1967
+ :item="item"
1968
+ :columns="columns"
1969
+ :index="index"
1970
+ :cardClass="cardClass"
1971
+ :cardHideFooter="cardHideFooter"
1972
+ :itemValue="itemValue"
1973
+ :getStateValue="getStateValue"
1974
+ :getArrayValue="getArrayValue"
1975
+ :showItem="showItem"
1976
+ :updateItem="updateItem"
1977
+ :removeItem="removeItem"
1978
+ />
2001
1979
  </slot>
2002
-
2003
- <template v-slot:footer>
2004
- <b-button-group>
2005
- <slot name="rowAction" v-bind:item="item" v-bind:index="index" v-bind:showItem="showItem"
2006
- v-bind:updateItem="updateItem" v-bind:removeItem="removeItem">
2007
- <b-button variant="primary" @click="showItem(item.id, index)">
2008
- <b-icon-eye></b-icon-eye>
2009
- </b-button>
2010
- <b-button variant="secondary" @click="updateItem(item.id, index)">
2011
- <b-icon-pencil></b-icon-pencil>
2012
- </b-button>
2013
- <b-button variant="danger" @click="removeItem(item.id, index)">
2014
- <b-icon-trash></b-icon-trash>
2015
- </b-button>
2016
- </slot>
2017
- </b-button-group>
2018
- </template>
2019
- </b-card>
2020
1980
  </div>
2021
1981
  </masonry>
2022
1982
  </draggable>
@@ -2027,6 +1987,28 @@ export default /*#__PURE__*/ {
2027
1987
 
2028
1988
  </div>
2029
1989
 
1990
+ <div v-if="displayMode == displayModes.MODE_KANBAN">
1991
+ <div v-for="(item, index) in itemsList" v-bind:key="index" class="item">
1992
+ <slot name="card" v-bind:item="item">
1993
+ <ItemCard
1994
+ v-for="(item, index) in itemsList"
1995
+ :key="index"
1996
+ :item="item"
1997
+ :columns="columns"
1998
+ :index="index"
1999
+ :cardClass="cardClass"
2000
+ :cardHideFooter="cardHideFooter"
2001
+ :itemValue="itemValue"
2002
+ :getStateValue="getStateValue"
2003
+ :getArrayValue="getArrayValue"
2004
+ :showItem="showItem"
2005
+ :updateItem="updateItem"
2006
+ :removeItem="removeItem"
2007
+ />
2008
+ </slot>
2009
+ </div>
2010
+ </div>
2011
+
2030
2012
  <div v-if="displayMode == displayModes.MODE_CUSTOM">
2031
2013
  <div :class="listContainerClass">
2032
2014
  <p v-if="!loading && items && items.length == 0 && !infiniteScroll" class="p-3">