@frollo/frollo-web-ui 6.0.2 → 6.0.3

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.
Files changed (62) hide show
  1. package/cjs/index.js +25 -17
  2. package/esm/{add-to-unscopables-cfb87985.js → add-to-unscopables-ee05b58f.js} +2 -2
  3. package/esm/{array-iteration-2181d2bd.js → array-iteration-8267bf22.js} +2 -2
  4. package/esm/{array-method-has-species-support-dfbd0c7f.js → array-method-has-species-support-6c675094.js} +1 -1
  5. package/esm/{array-method-is-strict-7dac83d7.js → array-method-is-strict-d313436f.js} +1 -1
  6. package/esm/{array-species-create-ff1f78e1.js → array-species-create-1c67e297.js} +2 -2
  7. package/esm/{classof-7ba4c6c3.js → classof-d44bf093.js} +1 -1
  8. package/esm/{create-property-1bf185fa.js → create-property-eb329361.js} +1 -1
  9. package/esm/{does-not-exceed-safe-integer-b66f7ee2.js → does-not-exceed-safe-integer-de37ce28.js} +1 -1
  10. package/esm/{es.array.concat-d9281ad1.js → es.array.concat-99b85557.js} +6 -6
  11. package/esm/{es.array.find-ee91a966.js → es.array.find-1ded15d5.js} +4 -4
  12. package/esm/{es.array.includes-d57031df.js → es.array.includes-08e25019.js} +3 -3
  13. package/esm/{es.array.map-582a2b69.js → es.array.map-c56ebffd.js} +4 -4
  14. package/esm/{es.date.to-string-dc67483a.js → es.date.to-string-15eb9936.js} +1 -1
  15. package/esm/{es.function.name-14d69869.js → es.function.name-6cafd747.js} +1 -1
  16. package/esm/{es.number.constructor-bed13ae4.js → es.number.constructor-fb16fe05.js} +2 -2
  17. package/esm/{es.object.to-string-31ad45ad.js → es.object.to-string-4b07c4d1.js} +2 -2
  18. package/esm/{es.string.includes-01e4d90f.js → es.string.includes-061e8272.js} +3 -3
  19. package/esm/{es.string.iterator-27b735a3.js → es.string.iterator-25db8cd2.js} +8 -8
  20. package/esm/{export-44690f0d.js → export-10c4adbc.js} +1 -1
  21. package/esm/{function-apply-5580128b.js → function-apply-e17cf65b.js} +1 -1
  22. package/esm/fw-accordion.js +11 -7
  23. package/esm/fw-animations.js +3 -3
  24. package/esm/fw-bar-chart.js +16 -16
  25. package/esm/{fw-button-cbaedd16.js → fw-button-c8502414.js} +1 -1
  26. package/esm/fw-button.js +6 -6
  27. package/esm/fw-checkbox.js +9 -9
  28. package/esm/fw-date-picker.js +10 -10
  29. package/esm/fw-drawer.js +6 -6
  30. package/esm/{fw-dropdown-3f1ae8ee.js → fw-dropdown-6856e66e.js} +3 -3
  31. package/esm/fw-dropdown.js +11 -11
  32. package/esm/{fw-image-9c1032f2.js → fw-image-aca2c61d.js} +10 -10
  33. package/esm/fw-image.js +17 -17
  34. package/esm/{fw-input-8fa201f7.js → fw-input-259e2e18.js} +4 -4
  35. package/esm/fw-input.js +14 -14
  36. package/esm/fw-loading.js +3 -3
  37. package/esm/fw-modal.js +6 -6
  38. package/esm/fw-navigation-menu.js +12 -10
  39. package/esm/fw-popover.js +7 -7
  40. package/esm/fw-progress-bar.js +3 -3
  41. package/esm/fw-provider-list.js +26 -26
  42. package/esm/fw-sidebar-menu.js +6 -6
  43. package/esm/{fw-table-row-cfbd796c.js → fw-table-row-23f78218.js} +18 -16
  44. package/esm/fw-table.js +11 -11
  45. package/esm/fw-tabs.js +9 -9
  46. package/esm/{fw-tag-749b4fc6.js → fw-tag-ac28200a.js} +2 -2
  47. package/esm/fw-tag.js +7 -7
  48. package/esm/fw-toast.js +15 -15
  49. package/esm/fw-transactions-card.js +17 -17
  50. package/esm/{index-95659c75.js → index-6758f755.js} +13 -13
  51. package/esm/index.js +38 -38
  52. package/esm/{object-create-200e3764.js → object-create-51bf02dc.js} +1 -1
  53. package/esm/{regexp-flags-8d5e20e1.js → regexp-flags-c09864e5.js} +3 -3
  54. package/esm/{web.timers-991ce9a8.js → web.timers-e406c8e6.js} +3 -3
  55. package/frollo-web-ui.esm.js +25 -17
  56. package/index.d.ts +8 -4
  57. package/package.json +1 -1
  58. package/types/components/fw-accordion/fw-accordion.vue.d.ts +4 -2
  59. package/types/components/fw-navigation-menu/index.types.d.ts +1 -0
  60. package/types/components/fw-table/fw-table.vue.d.ts +3 -2
  61. package/web-components/index.js +25 -17
  62. /package/esm/{is-forced-b8806e4b.js → is-forced-7cb3ee8f.js} +0 -0
package/esm/index.js CHANGED
@@ -1,11 +1,11 @@
1
- import { _ as _unsupportedIterableToArray, s as script$i } from './index-95659c75.js';
2
- export { s as FwBarChart } from './index-95659c75.js';
3
- import { s as script$c } from './fw-image-9c1032f2.js';
4
- export { s as FwImage } from './fw-image-9c1032f2.js';
5
- import './es.object.to-string-31ad45ad.js';
6
- import { d as descriptors, f as functionUncurryThis, t as toIndexedObject$1, o as objectPropertyIsEnumerable } from './is-forced-b8806e4b.js';
7
- import { _ as _export } from './export-44690f0d.js';
8
- import { o as objectKeys$1 } from './object-create-200e3764.js';
1
+ import { _ as _unsupportedIterableToArray, s as script$i } from './index-6758f755.js';
2
+ export { s as FwBarChart } from './index-6758f755.js';
3
+ import { s as script$c } from './fw-image-aca2c61d.js';
4
+ export { s as FwImage } from './fw-image-aca2c61d.js';
5
+ import './es.object.to-string-4b07c4d1.js';
6
+ import { d as descriptors, f as functionUncurryThis, t as toIndexedObject$1, o as objectPropertyIsEnumerable } from './is-forced-7cb3ee8f.js';
7
+ import { _ as _export } from './export-10c4adbc.js';
8
+ import { o as objectKeys$1 } from './object-create-51bf02dc.js';
9
9
  import './fw-form.js';
10
10
  import './fw-input.js';
11
11
  import { FwCheckbox as script$1 } from './fw-checkbox.js';
@@ -46,49 +46,49 @@ import { FwEmailPulse as __default__$5, FwSuccessPulse as __default__$6 } from '
46
46
  export { FwEmailPulse, FwSuccessPulse } from './fw-animations.js';
47
47
  import { F as Form } from './vee-validate.esm-a17a23c3.js';
48
48
  export { F as FwForm } from './vee-validate.esm-a17a23c3.js';
49
- import { s as script } from './fw-input-8fa201f7.js';
50
- export { s as FwInput } from './fw-input-8fa201f7.js';
51
- import { s as script$2 } from './fw-dropdown-3f1ae8ee.js';
52
- export { s as FwDropdown } from './fw-dropdown-3f1ae8ee.js';
49
+ import { s as script } from './fw-input-259e2e18.js';
50
+ export { s as FwInput } from './fw-input-259e2e18.js';
51
+ import { s as script$2 } from './fw-dropdown-6856e66e.js';
52
+ export { s as FwDropdown } from './fw-dropdown-6856e66e.js';
53
53
  import { s as script$3 } from './fw-card-1b6a67fe.js';
54
54
  export { s as FwCard } from './fw-card-1b6a67fe.js';
55
- import { s as script$4 } from './fw-button-cbaedd16.js';
56
- export { s as FwButton } from './fw-button-cbaedd16.js';
57
- import { _ as __default__ } from './fw-tag-749b4fc6.js';
58
- export { _ as FwTag } from './fw-tag-749b4fc6.js';
59
- import { _ as __default__$1, s as script$a, a as script$b } from './fw-table-row-cfbd796c.js';
60
- export { _ as FwTable, s as FwTableHead, a as FwTableRow } from './fw-table-row-cfbd796c.js';
55
+ import { s as script$4 } from './fw-button-c8502414.js';
56
+ export { s as FwButton } from './fw-button-c8502414.js';
57
+ import { _ as __default__ } from './fw-tag-ac28200a.js';
58
+ export { _ as FwTag } from './fw-tag-ac28200a.js';
59
+ import { _ as __default__$1, s as script$a, a as script$b } from './fw-table-row-23f78218.js';
60
+ export { _ as FwTable, s as FwTableHead, a as FwTableRow } from './fw-table-row-23f78218.js';
61
61
  import { s as script$d } from './fw-loading-bar-f5ca605c.js';
62
62
  export { s as FwLoadingBar } from './fw-loading-bar-f5ca605c.js';
63
63
  import { s as script$m } from './fw-loading-spinner-72d70258.js';
64
64
  export { s as FwLoadingSpinner } from './fw-loading-spinner-72d70258.js';
65
65
  import { _ as _defineProperty } from './defineProperty-b85f2e0f.js';
66
66
  import { reactive, createApp, h } from 'vue';
67
- import './es.number.constructor-bed13ae4.js';
68
- import './classof-7ba4c6c3.js';
69
- import './regexp-flags-8d5e20e1.js';
70
- import './function-apply-5580128b.js';
71
- import './es.string.iterator-27b735a3.js';
72
- import './array-iteration-2181d2bd.js';
73
- import './array-species-create-ff1f78e1.js';
74
- import './create-property-1bf185fa.js';
75
- import './es.array.map-582a2b69.js';
76
- import './array-method-has-species-support-dfbd0c7f.js';
77
- import './es.function.name-14d69869.js';
78
- import './does-not-exceed-safe-integer-b66f7ee2.js';
67
+ import './es.number.constructor-fb16fe05.js';
68
+ import './classof-d44bf093.js';
69
+ import './regexp-flags-c09864e5.js';
70
+ import './function-apply-e17cf65b.js';
71
+ import './es.string.iterator-25db8cd2.js';
72
+ import './array-iteration-8267bf22.js';
73
+ import './array-species-create-1c67e297.js';
74
+ import './create-property-eb329361.js';
75
+ import './es.array.map-c56ebffd.js';
76
+ import './array-method-has-species-support-6c675094.js';
77
+ import './es.function.name-6cafd747.js';
78
+ import './does-not-exceed-safe-integer-de37ce28.js';
79
79
  import './get-root-colours-865a52ba.js';
80
80
  import './uniqueId-fe08534a.js';
81
- import './es.array.includes-d57031df.js';
82
- import './add-to-unscopables-cfb87985.js';
83
- import './array-method-is-strict-7dac83d7.js';
84
- import './es.array.find-ee91a966.js';
85
- import './web.timers-991ce9a8.js';
81
+ import './es.array.includes-08e25019.js';
82
+ import './add-to-unscopables-ee05b58f.js';
83
+ import './array-method-is-strict-d313436f.js';
84
+ import './es.array.find-1ded15d5.js';
85
+ import './web.timers-e406c8e6.js';
86
86
  import './index-bced3b35.js';
87
87
  import './check-94a5917a.js';
88
88
  import './style-inject.es-1f59c1d0.js';
89
- import './es.array.concat-d9281ad1.js';
90
- import './es.string.includes-01e4d90f.js';
91
- import './es.date.to-string-dc67483a.js';
89
+ import './es.array.concat-99b85557.js';
90
+ import './es.string.includes-061e8272.js';
91
+ import './es.date.to-string-15eb9936.js';
92
92
  import './index-0c5cae4f.js';
93
93
 
94
94
  function _arrayWithHoles(arr) {
@@ -1,4 +1,4 @@
1
- import { T as objectKeysInternal, U as enumBugKeys$2, d as descriptors, V as v8PrototypeDefineBug, G as objectDefineProperty, n as anObject$2, t as toIndexedObject$1, D as getBuiltIn$1, W as hiddenKeys$1, a as documentCreateElement$1, O as sharedKey$1 } from './is-forced-b8806e4b.js';
1
+ import { T as objectKeysInternal, U as enumBugKeys$2, d as descriptors, V as v8PrototypeDefineBug, G as objectDefineProperty, n as anObject$2, t as toIndexedObject$1, D as getBuiltIn$1, W as hiddenKeys$1, a as documentCreateElement$1, O as sharedKey$1 } from './is-forced-7cb3ee8f.js';
2
2
 
3
3
  var internalObjectKeys = objectKeysInternal;
4
4
  var enumBugKeys$1 = enumBugKeys$2;
@@ -1,6 +1,6 @@
1
- import { e as toObject$1, h as fails$1, N as tryToString$1, n as anObject$1 } from './is-forced-b8806e4b.js';
2
- import { _ as _export } from './export-44690f0d.js';
3
- import { o as objectKeys } from './object-create-200e3764.js';
1
+ import { e as toObject$1, h as fails$1, N as tryToString$1, n as anObject$1 } from './is-forced-7cb3ee8f.js';
2
+ import { _ as _export } from './export-10c4adbc.js';
3
+ import { o as objectKeys } from './object-create-51bf02dc.js';
4
4
 
5
5
  var es_object_keys = {};
6
6
 
@@ -1,6 +1,6 @@
1
- import { f as functionUncurryThis, g as global$3, x as isCallable$1, j as engineUserAgent } from './is-forced-b8806e4b.js';
2
- import { _ as _export } from './export-44690f0d.js';
3
- import { f as functionApply } from './function-apply-5580128b.js';
1
+ import { f as functionUncurryThis, g as global$3, x as isCallable$1, j as engineUserAgent } from './is-forced-7cb3ee8f.js';
2
+ import { _ as _export } from './export-10c4adbc.js';
3
+ import { f as functionApply } from './function-apply-e17cf65b.js';
4
4
 
5
5
  var web_timers = {};
6
6
 
@@ -7101,13 +7101,14 @@ function render$n(_ctx, _cache, $props, $setup, $data, $options) {
7101
7101
  to: item.to,
7102
7102
  external: item.external,
7103
7103
  size: "md",
7104
- "aria-current": "page"
7104
+ "aria-current": "page",
7105
+ onClick: item.onClick
7105
7106
  }, {
7106
7107
  "default": withCtx(function () {
7107
7108
  return [createTextVNode(toDisplayString(item.label), 1)];
7108
7109
  }),
7109
7110
  _: 2
7110
- }, 1032, ["href", "to", "external"]);
7111
+ }, 1032, ["href", "to", "external", "onClick"]);
7111
7112
  }), 128))])])) : createCommentVNode("", true), _ctx.actionLabel ? (openBlock(), createElementBlock("div", _hoisted_5$a, [createVNode(_component_FwButton, {
7112
7113
  onClick: _ctx.actionClicked,
7113
7114
  size: "md",
@@ -7147,13 +7148,14 @@ function render$n(_ctx, _cache, $props, $setup, $data, $options) {
7147
7148
  to: item.to,
7148
7149
  external: item.external,
7149
7150
  size: "md",
7150
- "aria-current": "page"
7151
+ "aria-current": "page",
7152
+ onClick: item.onClick
7151
7153
  }, {
7152
7154
  "default": withCtx(function () {
7153
7155
  return [createTextVNode(toDisplayString(item.label), 1)];
7154
7156
  }),
7155
7157
  _: 2
7156
- }, 1032, ["href", "to", "external"]);
7158
+ }, 1032, ["href", "to", "external", "onClick"]);
7157
7159
  }), 128))]), _ctx.actionLabel ? (openBlock(), createBlock(_component_FwButton, {
7158
7160
  key: 0,
7159
7161
  "class": "w-full rounded-md",
@@ -8198,7 +8200,7 @@ var __default__$6 = defineComponent({
8198
8200
  ArrowDownSvg: render$A,
8199
8201
  FwLoadingBar: script$b
8200
8202
  },
8201
- emits: ['rowClicked'],
8203
+ emits: ['rowClicked', 'columnSorted'],
8202
8204
  props: {
8203
8205
  items: {
8204
8206
  type: Array,
@@ -8233,12 +8235,13 @@ var __default__$6 = defineComponent({
8233
8235
  var currentSortedColumn = ref('');
8234
8236
  onMounted(function () {
8235
8237
  if (Number(props.autoSortColumn) >= 0) {
8236
- sortColumn(columns.value[Number(props.autoSortColumn)]);
8238
+ sortColumn(columns.value[Number(props.autoSortColumn)], false);
8237
8239
  }
8238
8240
  });
8239
8241
  var _useColours = useColours(),
8240
8242
  bgHoverColor = _useColours.primaryFade5;
8241
8243
  var sortColumn = function sortColumn(column) {
8244
+ var isAction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
8242
8245
  if (!isColumnSortable(column)) return;
8243
8246
  currentSortedColumn.value = column;
8244
8247
  if (sortBy.value === column) {
@@ -8247,6 +8250,7 @@ var __default__$6 = defineComponent({
8247
8250
  sortBy.value = column;
8248
8251
  sortDirection.value = columnInitSort(column);
8249
8252
  }
8253
+ if (isAction) ctx.emit('columnSorted', column, sortDirection.value);
8250
8254
  };
8251
8255
  var sortedData = computed(function () {
8252
8256
  if (!sortBy.value) {
@@ -8321,7 +8325,7 @@ var __default__$6 = defineComponent({
8321
8325
  var __injectCSSVars__$5 = function __injectCSSVars__() {
8322
8326
  useCssVars(function (_ctx) {
8323
8327
  return {
8324
- "783a25a4": _ctx.bgHoverColor
8328
+ "1f1e2224": _ctx.bgHoverColor
8325
8329
  };
8326
8330
  });
8327
8331
  };
@@ -8332,7 +8336,7 @@ __default__$6.setup = __setup__$5 ? function (props, ctx) {
8332
8336
  } : __injectCSSVars__$5;
8333
8337
 
8334
8338
  var _withScopeId$4 = function _withScopeId(n) {
8335
- return pushScopeId("data-v-70e44800"), n = n(), popScopeId(), n;
8339
+ return pushScopeId("data-v-2b5e0ff2"), n = n(), popScopeId(), n;
8336
8340
  };
8337
8341
  var _hoisted_1$q = ["aria-busy"];
8338
8342
  var _hoisted_2$o = {
@@ -8441,12 +8445,12 @@ function render$g(_ctx, _cache, $props, $setup, $data, $options) {
8441
8445
  }), 128))])], 10, _hoisted_1$q);
8442
8446
  }
8443
8447
 
8444
- var css_248z$b = ".fw-table-head--sortable[data-v-70e44800]:hover{background-color:var(--783a25a4)}.fw-table-row[data-v-70e44800]:hover{background-color:var(--783a25a4)}";
8445
- var stylesheet$b = ".fw-table-head--sortable[data-v-70e44800]:hover{background-color:var(--783a25a4)}.fw-table-row[data-v-70e44800]:hover{background-color:var(--783a25a4)}";
8448
+ var css_248z$b = ".fw-table-head--sortable[data-v-2b5e0ff2]:hover{background-color:var(--1f1e2224)}.fw-table-row[data-v-2b5e0ff2]:hover{background-color:var(--1f1e2224)}";
8449
+ var stylesheet$b = ".fw-table-head--sortable[data-v-2b5e0ff2]:hover{background-color:var(--1f1e2224)}.fw-table-row[data-v-2b5e0ff2]:hover{background-color:var(--1f1e2224)}";
8446
8450
  styleInject(css_248z$b);
8447
8451
 
8448
8452
  __default__$6.render = render$g;
8449
- __default__$6.__scopeId = "data-v-70e44800";
8453
+ __default__$6.__scopeId = "data-v-2b5e0ff2";
8450
8454
 
8451
8455
  var script$a = defineComponent({
8452
8456
  name: 'FwTableHead'
@@ -8485,6 +8489,7 @@ script$9.render = render$e;
8485
8489
 
8486
8490
  var __default__$5 = defineComponent({
8487
8491
  name: 'FwAccordion',
8492
+ emits: ['toggled'],
8488
8493
  props: {
8489
8494
  /**
8490
8495
  * The header title of the accordion
@@ -8513,8 +8518,11 @@ var __default__$5 = defineComponent({
8513
8518
  "default": true
8514
8519
  }
8515
8520
  },
8516
- setup: function setup(props) {
8521
+ setup: function setup(props, ctx) {
8517
8522
  var isOpen = ref(props.isOpened);
8523
+ watch(isOpen, function (newValue) {
8524
+ ctx.emit('toggled', newValue);
8525
+ });
8518
8526
  var _useColours = useColours(),
8519
8527
  bgHoverColor = _useColours.primaryFade5;
8520
8528
  var beforeEnter = function beforeEnter(el) {
@@ -8542,7 +8550,7 @@ var __default__$5 = defineComponent({
8542
8550
  var __injectCSSVars__$4 = function __injectCSSVars__() {
8543
8551
  useCssVars(function (_ctx) {
8544
8552
  return {
8545
- "0ec0724b": _ctx.bgHoverColor
8553
+ "5f2b9a00": _ctx.bgHoverColor
8546
8554
  };
8547
8555
  });
8548
8556
  };
@@ -8553,7 +8561,7 @@ __default__$5.setup = __setup__$4 ? function (props, ctx) {
8553
8561
  } : __injectCSSVars__$4;
8554
8562
 
8555
8563
  var _withScopeId$3 = function _withScopeId(n) {
8556
- return pushScopeId("data-v-5123413b"), n = n(), popScopeId(), n;
8564
+ return pushScopeId("data-v-a62b48c8"), n = n(), popScopeId(), n;
8557
8565
  };
8558
8566
  var _hoisted_1$n = {
8559
8567
  "class": "fw-accordion rounded-sm border border-grey-40"
@@ -8598,12 +8606,12 @@ function render$d(_ctx, _cache, $props, $setup, $data, $options) {
8598
8606
  }, 8, ["onBeforeEnter", "onEnter", "onBeforeLeave", "onLeave"])]);
8599
8607
  }
8600
8608
 
8601
- var css_248z$a = ".fw-accordion--header-open[data-v-5123413b],.fw-accordion--header[data-v-5123413b]:focus-visible,.fw-accordion--header[data-v-5123413b]:hover{background-color:var(--0ec0724b)}.fw-accordion--icon[data-v-5123413b]{position:relative}.fw-accordion--icon[data-v-5123413b]:after,.fw-accordion--icon[data-v-5123413b]:before{background:var(--colorBody);border-radius:3px;content:\"\";height:.2rem;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:1rem}.fw-accordion--icon[data-v-5123413b]:after{-webkit-transform:translate(-50%,-50%) rotate(90deg);-ms-transform:translate(-50%,-50%) rotate(90deg);transform:translate(-50%,-50%) rotate(90deg)}.fw-accordion--icon-open[data-v-5123413b]:after{width:0}";
8602
- var stylesheet$a = ".fw-accordion--header-open[data-v-5123413b],.fw-accordion--header[data-v-5123413b]:focus-visible,.fw-accordion--header[data-v-5123413b]:hover{background-color:var(--0ec0724b)}.fw-accordion--icon[data-v-5123413b]{position:relative}.fw-accordion--icon[data-v-5123413b]:after,.fw-accordion--icon[data-v-5123413b]:before{background:var(--colorBody);border-radius:3px;content:\"\";height:.2rem;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:1rem}.fw-accordion--icon[data-v-5123413b]:after{-webkit-transform:translate(-50%,-50%) rotate(90deg);-ms-transform:translate(-50%,-50%) rotate(90deg);transform:translate(-50%,-50%) rotate(90deg)}.fw-accordion--icon-open[data-v-5123413b]:after{width:0}";
8609
+ var css_248z$a = ".fw-accordion--header-open[data-v-a62b48c8],.fw-accordion--header[data-v-a62b48c8]:focus-visible,.fw-accordion--header[data-v-a62b48c8]:hover{background-color:var(--5f2b9a00)}.fw-accordion--icon[data-v-a62b48c8]{position:relative}.fw-accordion--icon[data-v-a62b48c8]:after,.fw-accordion--icon[data-v-a62b48c8]:before{background:var(--colorBody);border-radius:3px;content:\"\";height:.2rem;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:1rem}.fw-accordion--icon[data-v-a62b48c8]:after{-webkit-transform:translate(-50%,-50%) rotate(90deg);-ms-transform:translate(-50%,-50%) rotate(90deg);transform:translate(-50%,-50%) rotate(90deg)}.fw-accordion--icon-open[data-v-a62b48c8]:after{width:0}";
8610
+ var stylesheet$a = ".fw-accordion--header-open[data-v-a62b48c8],.fw-accordion--header[data-v-a62b48c8]:focus-visible,.fw-accordion--header[data-v-a62b48c8]:hover{background-color:var(--5f2b9a00)}.fw-accordion--icon[data-v-a62b48c8]{position:relative}.fw-accordion--icon[data-v-a62b48c8]:after,.fw-accordion--icon[data-v-a62b48c8]:before{background:var(--colorBody);border-radius:3px;content:\"\";height:.2rem;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:1rem}.fw-accordion--icon[data-v-a62b48c8]:after{-webkit-transform:translate(-50%,-50%) rotate(90deg);-ms-transform:translate(-50%,-50%) rotate(90deg);transform:translate(-50%,-50%) rotate(90deg)}.fw-accordion--icon-open[data-v-a62b48c8]:after{width:0}";
8603
8611
  styleInject(css_248z$a);
8604
8612
 
8605
8613
  __default__$5.render = render$d;
8606
- __default__$5.__scopeId = "data-v-5123413b";
8614
+ __default__$5.__scopeId = "data-v-a62b48c8";
8607
8615
 
8608
8616
  var es_array_from = {};
8609
8617
 
package/index.d.ts CHANGED
@@ -755,6 +755,7 @@ declare interface NavMenuItem {
755
755
  href?: string;
756
756
  label: string;
757
757
  external?: boolean;
758
+ onClick?: () => void;
758
759
  }
759
760
 
760
761
  declare const _default$h: vue.DefineComponent<{
@@ -1373,7 +1374,7 @@ declare const __default__$5: vue.DefineComponent<{
1373
1374
  columns: vue.ComputedRef<string[]>;
1374
1375
  sortBy: vue.Ref<string>;
1375
1376
  sortDirection: vue.Ref<FwTableSort>;
1376
- sortColumn: (column: string) => void;
1377
+ sortColumn: (column: string, isAction?: boolean) => void;
1377
1378
  sortedData: vue.ComputedRef<FwTableItem[]>;
1378
1379
  currentSortedColumn: vue.Ref<string>;
1379
1380
  sortedIcon: (sortDir: string, column: string) => boolean;
@@ -1382,7 +1383,7 @@ declare const __default__$5: vue.DefineComponent<{
1382
1383
  isDisabled: (column: string) => boolean;
1383
1384
  rowClicked: (row: FwTableItem) => void;
1384
1385
  bgHoverColor: string;
1385
- }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "rowClicked"[], "rowClicked", vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
1386
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, ("rowClicked" | "columnSorted")[], "rowClicked" | "columnSorted", vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
1386
1387
  items: {
1387
1388
  type: PropType<FwTableItem[]>;
1388
1389
  required: true;
@@ -1408,6 +1409,7 @@ declare const __default__$5: vue.DefineComponent<{
1408
1409
  };
1409
1410
  }>> & {
1410
1411
  onRowClicked?: ((...args: any[]) => any) | undefined;
1412
+ onColumnSorted?: ((...args: any[]) => any) | undefined;
1411
1413
  }, {
1412
1414
  loading: boolean;
1413
1415
  clickableRows: boolean;
@@ -1451,7 +1453,7 @@ declare const __default__$4: vue.DefineComponent<{
1451
1453
  beforeLeave: (el: Element) => void;
1452
1454
  leave: (el: Element) => void;
1453
1455
  bgHoverColor: string;
1454
- }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
1456
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "toggled"[], "toggled", vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps, Readonly<vue.ExtractPropTypes<{
1455
1457
  /**
1456
1458
  * The header title of the accordion
1457
1459
  */
@@ -1478,7 +1480,9 @@ declare const __default__$4: vue.DefineComponent<{
1478
1480
  type: BooleanConstructor;
1479
1481
  default: boolean;
1480
1482
  };
1481
- }>>, {
1483
+ }>> & {
1484
+ onToggled?: ((...args: any[]) => any) | undefined;
1485
+ }, {
1482
1486
  isOpened: boolean;
1483
1487
  iconPositionStart: boolean;
1484
1488
  }>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frollo/frollo-web-ui",
3
- "version": "6.0.2",
3
+ "version": "6.0.3",
4
4
  "description": "Frollo's UI library for components, utilities and configs",
5
5
  "exports": {
6
6
  "./icons": "./icons/index.ts",
@@ -32,7 +32,7 @@ declare const __default__: import("vue").DefineComponent<{
32
32
  beforeLeave: (el: Element) => void;
33
33
  leave: (el: Element) => void;
34
34
  bgHoverColor: string;
35
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
35
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "toggled"[], "toggled", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
36
36
  /**
37
37
  * The header title of the accordion
38
38
  */
@@ -59,7 +59,9 @@ declare const __default__: import("vue").DefineComponent<{
59
59
  type: BooleanConstructor;
60
60
  default: boolean;
61
61
  };
62
- }>>, {
62
+ }>> & {
63
+ onToggled?: ((...args: any[]) => any) | undefined;
64
+ }, {
63
65
  isOpened: boolean;
64
66
  iconPositionStart: boolean;
65
67
  }>;
@@ -3,4 +3,5 @@ export declare interface NavMenuItem {
3
3
  href?: string;
4
4
  label: string;
5
5
  external?: boolean;
6
+ onClick?: () => void;
6
7
  }
@@ -28,7 +28,7 @@ declare const __default__: import("vue").DefineComponent<{
28
28
  columns: import("vue").ComputedRef<string[]>;
29
29
  sortBy: import("vue").Ref<string>;
30
30
  sortDirection: import("vue").Ref<FwTableSort>;
31
- sortColumn: (column: string) => void;
31
+ sortColumn: (column: string, isAction?: boolean) => void;
32
32
  sortedData: import("vue").ComputedRef<FwTableItem[]>;
33
33
  currentSortedColumn: import("vue").Ref<string>;
34
34
  sortedIcon: (sortDir: string, column: string) => boolean;
@@ -37,7 +37,7 @@ declare const __default__: import("vue").DefineComponent<{
37
37
  isDisabled: (column: string) => boolean;
38
38
  rowClicked: (row: FwTableItem) => void;
39
39
  bgHoverColor: string;
40
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "rowClicked"[], "rowClicked", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
40
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("rowClicked" | "columnSorted")[], "rowClicked" | "columnSorted", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
41
41
  items: {
42
42
  type: PropType<FwTableItem[]>;
43
43
  required: true;
@@ -63,6 +63,7 @@ declare const __default__: import("vue").DefineComponent<{
63
63
  };
64
64
  }>> & {
65
65
  onRowClicked?: ((...args: any[]) => any) | undefined;
66
+ onColumnSorted?: ((...args: any[]) => any) | undefined;
66
67
  }, {
67
68
  loading: boolean;
68
69
  clickableRows: boolean;
@@ -18551,13 +18551,14 @@
18551
18551
  to: item.to,
18552
18552
  external: item.external,
18553
18553
  size: "md",
18554
- "aria-current": "page"
18554
+ "aria-current": "page",
18555
+ onClick: item.onClick
18555
18556
  }, {
18556
18557
  "default": withCtx(function () {
18557
18558
  return [createTextVNode(toDisplayString(item.label), 1)];
18558
18559
  }),
18559
18560
  _: 2
18560
- }, 1032, ["href", "to", "external"]);
18561
+ }, 1032, ["href", "to", "external", "onClick"]);
18561
18562
  }), 128))])])) : createCommentVNode("", true), _ctx.actionLabel ? (openBlock(), createElementBlock("div", _hoisted_5$a, [createVNode(_component_FwButton, {
18562
18563
  onClick: _ctx.actionClicked,
18563
18564
  size: "md",
@@ -18597,13 +18598,14 @@
18597
18598
  to: item.to,
18598
18599
  external: item.external,
18599
18600
  size: "md",
18600
- "aria-current": "page"
18601
+ "aria-current": "page",
18602
+ onClick: item.onClick
18601
18603
  }, {
18602
18604
  "default": withCtx(function () {
18603
18605
  return [createTextVNode(toDisplayString(item.label), 1)];
18604
18606
  }),
18605
18607
  _: 2
18606
- }, 1032, ["href", "to", "external"]);
18608
+ }, 1032, ["href", "to", "external", "onClick"]);
18607
18609
  }), 128))]), _ctx.actionLabel ? (openBlock(), createBlock(_component_FwButton, {
18608
18610
  key: 0,
18609
18611
  "class": "w-full rounded-md",
@@ -19648,7 +19650,7 @@
19648
19650
  ArrowDownSvg: render$A,
19649
19651
  FwLoadingBar: script$b
19650
19652
  },
19651
- emits: ['rowClicked'],
19653
+ emits: ['rowClicked', 'columnSorted'],
19652
19654
  props: {
19653
19655
  items: {
19654
19656
  type: Array,
@@ -19683,12 +19685,13 @@
19683
19685
  var currentSortedColumn = ref('');
19684
19686
  onMounted(function () {
19685
19687
  if (Number(props.autoSortColumn) >= 0) {
19686
- sortColumn(columns.value[Number(props.autoSortColumn)]);
19688
+ sortColumn(columns.value[Number(props.autoSortColumn)], false);
19687
19689
  }
19688
19690
  });
19689
19691
  var _useColours = useColours(),
19690
19692
  bgHoverColor = _useColours.primaryFade5;
19691
19693
  var sortColumn = function sortColumn(column) {
19694
+ var isAction = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
19692
19695
  if (!isColumnSortable(column)) return;
19693
19696
  currentSortedColumn.value = column;
19694
19697
  if (sortBy.value === column) {
@@ -19697,6 +19700,7 @@
19697
19700
  sortBy.value = column;
19698
19701
  sortDirection.value = columnInitSort(column);
19699
19702
  }
19703
+ if (isAction) ctx.emit('columnSorted', column, sortDirection.value);
19700
19704
  };
19701
19705
  var sortedData = computed(function () {
19702
19706
  if (!sortBy.value) {
@@ -19771,7 +19775,7 @@
19771
19775
  var __injectCSSVars__$5 = function __injectCSSVars__() {
19772
19776
  useCssVars(function (_ctx) {
19773
19777
  return {
19774
- "783a25a4": _ctx.bgHoverColor
19778
+ "1f1e2224": _ctx.bgHoverColor
19775
19779
  };
19776
19780
  });
19777
19781
  };
@@ -19782,7 +19786,7 @@
19782
19786
  } : __injectCSSVars__$5;
19783
19787
 
19784
19788
  var _withScopeId$4 = function _withScopeId(n) {
19785
- return pushScopeId("data-v-70e44800"), n = n(), popScopeId(), n;
19789
+ return pushScopeId("data-v-2b5e0ff2"), n = n(), popScopeId(), n;
19786
19790
  };
19787
19791
  var _hoisted_1$q = ["aria-busy"];
19788
19792
  var _hoisted_2$o = {
@@ -19891,12 +19895,12 @@
19891
19895
  }), 128))])], 10, _hoisted_1$q);
19892
19896
  }
19893
19897
 
19894
- var css_248z$b = ".fw-table-head--sortable[data-v-70e44800]:hover{background-color:var(--783a25a4)}.fw-table-row[data-v-70e44800]:hover{background-color:var(--783a25a4)}";
19895
- var stylesheet$b = ".fw-table-head--sortable[data-v-70e44800]:hover{background-color:var(--783a25a4)}.fw-table-row[data-v-70e44800]:hover{background-color:var(--783a25a4)}";
19898
+ var css_248z$b = ".fw-table-head--sortable[data-v-2b5e0ff2]:hover{background-color:var(--1f1e2224)}.fw-table-row[data-v-2b5e0ff2]:hover{background-color:var(--1f1e2224)}";
19899
+ var stylesheet$b = ".fw-table-head--sortable[data-v-2b5e0ff2]:hover{background-color:var(--1f1e2224)}.fw-table-row[data-v-2b5e0ff2]:hover{background-color:var(--1f1e2224)}";
19896
19900
  styleInject(css_248z$b);
19897
19901
 
19898
19902
  __default__$6.render = render$g;
19899
- __default__$6.__scopeId = "data-v-70e44800";
19903
+ __default__$6.__scopeId = "data-v-2b5e0ff2";
19900
19904
 
19901
19905
  var script$a = defineComponent({
19902
19906
  name: 'FwTableHead'
@@ -19935,6 +19939,7 @@
19935
19939
 
19936
19940
  var __default__$5 = defineComponent({
19937
19941
  name: 'FwAccordion',
19942
+ emits: ['toggled'],
19938
19943
  props: {
19939
19944
  /**
19940
19945
  * The header title of the accordion
@@ -19963,8 +19968,11 @@
19963
19968
  "default": true
19964
19969
  }
19965
19970
  },
19966
- setup: function setup(props) {
19971
+ setup: function setup(props, ctx) {
19967
19972
  var isOpen = ref(props.isOpened);
19973
+ watch(isOpen, function (newValue) {
19974
+ ctx.emit('toggled', newValue);
19975
+ });
19968
19976
  var _useColours = useColours(),
19969
19977
  bgHoverColor = _useColours.primaryFade5;
19970
19978
  var beforeEnter = function beforeEnter(el) {
@@ -19992,7 +20000,7 @@
19992
20000
  var __injectCSSVars__$4 = function __injectCSSVars__() {
19993
20001
  useCssVars(function (_ctx) {
19994
20002
  return {
19995
- "0ec0724b": _ctx.bgHoverColor
20003
+ "5f2b9a00": _ctx.bgHoverColor
19996
20004
  };
19997
20005
  });
19998
20006
  };
@@ -20003,7 +20011,7 @@
20003
20011
  } : __injectCSSVars__$4;
20004
20012
 
20005
20013
  var _withScopeId$3 = function _withScopeId(n) {
20006
- return pushScopeId("data-v-5123413b"), n = n(), popScopeId(), n;
20014
+ return pushScopeId("data-v-a62b48c8"), n = n(), popScopeId(), n;
20007
20015
  };
20008
20016
  var _hoisted_1$n = {
20009
20017
  "class": "fw-accordion rounded-sm border border-grey-40"
@@ -20048,12 +20056,12 @@
20048
20056
  }, 8, ["onBeforeEnter", "onEnter", "onBeforeLeave", "onLeave"])]);
20049
20057
  }
20050
20058
 
20051
- var css_248z$a = ".fw-accordion--header-open[data-v-5123413b],.fw-accordion--header[data-v-5123413b]:focus-visible,.fw-accordion--header[data-v-5123413b]:hover{background-color:var(--0ec0724b)}.fw-accordion--icon[data-v-5123413b]{position:relative}.fw-accordion--icon[data-v-5123413b]:after,.fw-accordion--icon[data-v-5123413b]:before{background:var(--colorBody);border-radius:3px;content:\"\";height:.2rem;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:1rem}.fw-accordion--icon[data-v-5123413b]:after{-webkit-transform:translate(-50%,-50%) rotate(90deg);-ms-transform:translate(-50%,-50%) rotate(90deg);transform:translate(-50%,-50%) rotate(90deg)}.fw-accordion--icon-open[data-v-5123413b]:after{width:0}";
20052
- var stylesheet$a = ".fw-accordion--header-open[data-v-5123413b],.fw-accordion--header[data-v-5123413b]:focus-visible,.fw-accordion--header[data-v-5123413b]:hover{background-color:var(--0ec0724b)}.fw-accordion--icon[data-v-5123413b]{position:relative}.fw-accordion--icon[data-v-5123413b]:after,.fw-accordion--icon[data-v-5123413b]:before{background:var(--colorBody);border-radius:3px;content:\"\";height:.2rem;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:1rem}.fw-accordion--icon[data-v-5123413b]:after{-webkit-transform:translate(-50%,-50%) rotate(90deg);-ms-transform:translate(-50%,-50%) rotate(90deg);transform:translate(-50%,-50%) rotate(90deg)}.fw-accordion--icon-open[data-v-5123413b]:after{width:0}";
20059
+ var css_248z$a = ".fw-accordion--header-open[data-v-a62b48c8],.fw-accordion--header[data-v-a62b48c8]:focus-visible,.fw-accordion--header[data-v-a62b48c8]:hover{background-color:var(--5f2b9a00)}.fw-accordion--icon[data-v-a62b48c8]{position:relative}.fw-accordion--icon[data-v-a62b48c8]:after,.fw-accordion--icon[data-v-a62b48c8]:before{background:var(--colorBody);border-radius:3px;content:\"\";height:.2rem;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:1rem}.fw-accordion--icon[data-v-a62b48c8]:after{-webkit-transform:translate(-50%,-50%) rotate(90deg);-ms-transform:translate(-50%,-50%) rotate(90deg);transform:translate(-50%,-50%) rotate(90deg)}.fw-accordion--icon-open[data-v-a62b48c8]:after{width:0}";
20060
+ var stylesheet$a = ".fw-accordion--header-open[data-v-a62b48c8],.fw-accordion--header[data-v-a62b48c8]:focus-visible,.fw-accordion--header[data-v-a62b48c8]:hover{background-color:var(--5f2b9a00)}.fw-accordion--icon[data-v-a62b48c8]{position:relative}.fw-accordion--icon[data-v-a62b48c8]:after,.fw-accordion--icon[data-v-a62b48c8]:before{background:var(--colorBody);border-radius:3px;content:\"\";height:.2rem;left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:.3s ease-in-out;transition:.3s ease-in-out;width:1rem}.fw-accordion--icon[data-v-a62b48c8]:after{-webkit-transform:translate(-50%,-50%) rotate(90deg);-ms-transform:translate(-50%,-50%) rotate(90deg);transform:translate(-50%,-50%) rotate(90deg)}.fw-accordion--icon-open[data-v-a62b48c8]:after{width:0}";
20053
20061
  styleInject(css_248z$a);
20054
20062
 
20055
20063
  __default__$5.render = render$d;
20056
- __default__$5.__scopeId = "data-v-5123413b";
20064
+ __default__$5.__scopeId = "data-v-a62b48c8";
20057
20065
 
20058
20066
  var es_array_from = {};
20059
20067