@biggive/components 202302161725.0.0 → 202303021718.0.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.
Files changed (85) hide show
  1. package/dist/biggive/biggive.esm.js +1 -1
  2. package/dist/biggive/{p-517cb7f7.entry.js → p-08fc4499.entry.js} +1 -1
  3. package/dist/biggive/{p-722c8c52.entry.js → p-0f38685b.entry.js} +1 -1
  4. package/dist/biggive/{p-f6ddbee5.entry.js → p-13f4a2c4.entry.js} +1 -1
  5. package/dist/biggive/{p-57cd992c.entry.js → p-223759f6.entry.js} +1 -1
  6. package/dist/biggive/{p-9350e5e9.entry.js → p-34cfc5da.entry.js} +1 -1
  7. package/dist/biggive/{p-c75752fd.entry.js → p-3b378f79.entry.js} +1 -1
  8. package/dist/biggive/{p-9dc67a33.entry.js → p-52bb0267.entry.js} +1 -1
  9. package/dist/biggive/{p-35200669.entry.js → p-53189bc6.entry.js} +1 -1
  10. package/dist/biggive/{p-1a8cc3db.entry.js → p-5a38b219.entry.js} +1 -1
  11. package/dist/biggive/{p-c128620b.entry.js → p-71054cf6.entry.js} +1 -1
  12. package/dist/biggive/p-780650cc.entry.js +1 -0
  13. package/dist/biggive/{p-a0f7c83c.entry.js → p-8876011d.entry.js} +1 -1
  14. package/dist/biggive/{p-441bc7d1.entry.js → p-95bd7f7a.entry.js} +1 -1
  15. package/dist/biggive/{p-f0e1930b.entry.js → p-99f18976.entry.js} +1 -1
  16. package/dist/biggive/p-a0941518.entry.js +1 -0
  17. package/dist/biggive/p-acf3bcd9.js +2 -0
  18. package/dist/biggive/{p-a546f541.entry.js → p-d7f8a6fd.entry.js} +1 -1
  19. package/dist/biggive/{p-a35c092d.entry.js → p-d8432f12.entry.js} +1 -1
  20. package/dist/biggive/{p-2afc20c1.entry.js → p-eb6aecf0.entry.js} +1 -1
  21. package/dist/biggive/{p-056f9d01.entry.js → p-f8e38bb9.entry.js} +1 -1
  22. package/dist/biggive/{p-9e11b9fe.entry.js → p-fe9f3e72.entry.js} +1 -1
  23. package/dist/cjs/biggive-article-card.cjs.entry.js +1 -1
  24. package/dist/cjs/biggive-back-to-top_27.cjs.entry.js +1 -1
  25. package/dist/cjs/biggive-basic-card.cjs.entry.js +1 -1
  26. package/dist/cjs/biggive-beneficiary-icon.cjs.entry.js +1 -1
  27. package/dist/cjs/biggive-biography-card.cjs.entry.js +1 -1
  28. package/dist/cjs/biggive-boxed-content.cjs.entry.js +1 -1
  29. package/dist/cjs/biggive-category-icon.cjs.entry.js +1 -1
  30. package/dist/cjs/biggive-form.cjs.entry.js +1 -1
  31. package/dist/cjs/biggive-formatted-text.cjs.entry.js +1 -1
  32. package/dist/cjs/biggive-header.cjs.entry.js +1 -1
  33. package/dist/cjs/biggive-icon-group.cjs.entry.js +1 -1
  34. package/dist/cjs/biggive-nav-group.cjs.entry.js +1 -1
  35. package/dist/cjs/biggive-nav-item.cjs.entry.js +1 -1
  36. package/dist/cjs/biggive-popup-standalone.cjs.entry.js +1 -1
  37. package/dist/cjs/biggive-search.cjs.entry.js +1 -1
  38. package/dist/cjs/biggive-tab.cjs.entry.js +1 -1
  39. package/dist/cjs/biggive-tabbed-content.cjs.entry.js +1 -1
  40. package/dist/cjs/biggive-table.cjs.entry.js +33 -0
  41. package/dist/cjs/biggive-text-input.cjs.entry.js +1 -1
  42. package/dist/cjs/biggive-video.cjs.entry.js +1 -1
  43. package/dist/cjs/biggive.cjs.js +2 -2
  44. package/dist/cjs/{index-562d2f5c.js → index-4ae5dbd7.js} +389 -7
  45. package/dist/cjs/loader.cjs.js +2 -2
  46. package/dist/collection/collection-manifest.json +1 -0
  47. package/dist/collection/components/biggive-table/biggive-table.css +324 -0
  48. package/dist/collection/components/biggive-table/biggive-table.js +147 -0
  49. package/dist/collection/components/biggive-table/biggive-table.stories.js +76 -0
  50. package/dist/collection/globals/brand-colour.js +1 -0
  51. package/dist/components/biggive-table.d.ts +11 -0
  52. package/dist/components/biggive-table.js +52 -0
  53. package/dist/components/index.d.ts +1 -0
  54. package/dist/components/index.js +1 -0
  55. package/dist/esm/biggive-article-card.entry.js +1 -1
  56. package/dist/esm/biggive-back-to-top_27.entry.js +1 -1
  57. package/dist/esm/biggive-basic-card.entry.js +1 -1
  58. package/dist/esm/biggive-beneficiary-icon.entry.js +1 -1
  59. package/dist/esm/biggive-biography-card.entry.js +1 -1
  60. package/dist/esm/biggive-boxed-content.entry.js +1 -1
  61. package/dist/esm/biggive-category-icon.entry.js +1 -1
  62. package/dist/esm/biggive-form.entry.js +1 -1
  63. package/dist/esm/biggive-formatted-text.entry.js +1 -1
  64. package/dist/esm/biggive-header.entry.js +1 -1
  65. package/dist/esm/biggive-icon-group.entry.js +1 -1
  66. package/dist/esm/biggive-nav-group.entry.js +1 -1
  67. package/dist/esm/biggive-nav-item.entry.js +1 -1
  68. package/dist/esm/biggive-popup-standalone.entry.js +1 -1
  69. package/dist/esm/biggive-search.entry.js +1 -1
  70. package/dist/esm/biggive-tab.entry.js +1 -1
  71. package/dist/esm/biggive-tabbed-content.entry.js +1 -1
  72. package/dist/esm/biggive-table.entry.js +29 -0
  73. package/dist/esm/biggive-text-input.entry.js +1 -1
  74. package/dist/esm/biggive-video.entry.js +1 -1
  75. package/dist/esm/biggive.js +2 -2
  76. package/dist/esm/{index-5ca4e7a1.js → index-43541c5f.js} +389 -7
  77. package/dist/esm/loader.js +2 -2
  78. package/dist/types/components/biggive-table/biggive-table.d.ts +9 -0
  79. package/dist/types/components/biggive-table/biggive-table.stories.d.ts +42 -0
  80. package/dist/types/components.d.ts +24 -0
  81. package/dist/types/globals/brand-colour.d.ts +1 -0
  82. package/hydrate/index.js +41 -0
  83. package/package.json +1 -1
  84. package/dist/biggive/p-c0aadf86.entry.js +0 -1
  85. package/dist/biggive/p-d49d5f66.js +0 -2
@@ -31,7 +31,11 @@ const NAMESPACE = 'biggive';
31
31
  * Modified for Stencil's renderer and slot projection
32
32
  */
33
33
  let scopeId;
34
+ let contentRef;
34
35
  let hostTagName;
36
+ let useNativeShadowDom = false;
37
+ let checkSlotFallbackVisibility = false;
38
+ let checkSlotRelocate = false;
35
39
  let isSvgMode = false;
36
40
  let queuePending = false;
37
41
  const getAssetPath = (path) => {
@@ -91,6 +95,7 @@ const isComplexType = (o) => {
91
95
  // export function h(nodeName: string | d.FunctionalComponent, vnodeData: d.PropsType, ...children: d.ChildType[]): d.VNode;
92
96
  const h = (nodeName, vnodeData, ...children) => {
93
97
  let child = null;
98
+ let slotName = null;
94
99
  let simple = false;
95
100
  let lastSimple = false;
96
101
  const vNodeChildren = [];
@@ -118,6 +123,9 @@ const h = (nodeName, vnodeData, ...children) => {
118
123
  };
119
124
  walk(children);
120
125
  if (vnodeData) {
126
+ if (vnodeData.name) {
127
+ slotName = vnodeData.name;
128
+ }
121
129
  {
122
130
  const classData = vnodeData.className || vnodeData.class;
123
131
  if (classData) {
@@ -139,6 +147,9 @@ const h = (nodeName, vnodeData, ...children) => {
139
147
  if (vNodeChildren.length > 0) {
140
148
  vnode.$children$ = vNodeChildren;
141
149
  }
150
+ {
151
+ vnode.$name$ = slotName;
152
+ }
142
153
  return vnode;
143
154
  };
144
155
  const newVNode = (tag, text) => {
@@ -152,6 +163,9 @@ const newVNode = (tag, text) => {
152
163
  {
153
164
  vnode.$attrs$ = null;
154
165
  }
166
+ {
167
+ vnode.$name$ = null;
168
+ }
155
169
  return vnode;
156
170
  };
157
171
  const Host = {};
@@ -360,6 +374,10 @@ const clientHydrate = (parentVNode, childRenderNodes, slotNodes, shadowRootNodes
360
374
  // remove the content ref comment since it's not needed for shadow
361
375
  node.remove();
362
376
  }
377
+ else {
378
+ hostElm['s-cr'] = node;
379
+ node['s-cn'] = true;
380
+ }
363
381
  }
364
382
  }
365
383
  }
@@ -703,16 +721,39 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
703
721
  let i = 0;
704
722
  let elm;
705
723
  let childNode;
724
+ let oldVNode;
725
+ if (!useNativeShadowDom) {
726
+ // remember for later we need to check to relocate nodes
727
+ checkSlotRelocate = true;
728
+ if (newVNode.$tag$ === 'slot') {
729
+ if (scopeId) {
730
+ // scoped css needs to add its scoped id to the parent element
731
+ parentElm.classList.add(scopeId + '-s');
732
+ }
733
+ newVNode.$flags$ |= newVNode.$children$
734
+ ? // slot element has fallback content
735
+ 2 /* VNODE_FLAGS.isSlotFallback */
736
+ : // slot element does not have fallback content
737
+ 1 /* VNODE_FLAGS.isSlotReference */;
738
+ }
739
+ }
706
740
  if (newVNode.$text$ !== null) {
707
741
  // create text node
708
742
  elm = newVNode.$elm$ = doc.createTextNode(newVNode.$text$);
709
743
  }
744
+ else if (newVNode.$flags$ & 1 /* VNODE_FLAGS.isSlotReference */) {
745
+ // create a slot reference node
746
+ elm = newVNode.$elm$ =
747
+ doc.createTextNode('');
748
+ }
710
749
  else {
711
750
  if (!isSvgMode) {
712
751
  isSvgMode = newVNode.$tag$ === 'svg';
713
752
  }
714
753
  // create element
715
- elm = newVNode.$elm$ = (doc.createElementNS(isSvgMode ? SVG_NS : HTML_NS, newVNode.$tag$)
754
+ elm = newVNode.$elm$ = (doc.createElementNS(isSvgMode ? SVG_NS : HTML_NS, newVNode.$flags$ & 2 /* VNODE_FLAGS.isSlotFallback */
755
+ ? 'slot-fb'
756
+ : newVNode.$tag$)
716
757
  );
717
758
  if (isSvgMode && newVNode.$tag$ === 'foreignObject') {
718
759
  isSvgMode = false;
@@ -729,7 +770,7 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
729
770
  if (newVNode.$children$) {
730
771
  for (i = 0; i < newVNode.$children$.length; ++i) {
731
772
  // create the node
732
- childNode = createElm(oldParentVNode, newVNode, i);
773
+ childNode = createElm(oldParentVNode, newVNode, i, elm);
733
774
  // return node could have been null
734
775
  if (childNode) {
735
776
  // append our new node
@@ -748,20 +789,62 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
748
789
  }
749
790
  }
750
791
  }
792
+ {
793
+ elm['s-hn'] = hostTagName;
794
+ if (newVNode.$flags$ & (2 /* VNODE_FLAGS.isSlotFallback */ | 1 /* VNODE_FLAGS.isSlotReference */)) {
795
+ // remember the content reference comment
796
+ elm['s-sr'] = true;
797
+ // remember the content reference comment
798
+ elm['s-cr'] = contentRef;
799
+ // remember the slot name, or empty string for default slot
800
+ elm['s-sn'] = newVNode.$name$ || '';
801
+ // check if we've got an old vnode for this slot
802
+ oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
803
+ if (oldVNode && oldVNode.$tag$ === newVNode.$tag$ && oldParentVNode.$elm$) {
804
+ // we've got an old slot vnode and the wrapper is being replaced
805
+ // so let's move the old slot content back to it's original location
806
+ putBackInOriginalLocation(oldParentVNode.$elm$, false);
807
+ }
808
+ }
809
+ }
751
810
  return elm;
752
811
  };
812
+ const putBackInOriginalLocation = (parentElm, recursive) => {
813
+ plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
814
+ const oldSlotChildNodes = parentElm.childNodes;
815
+ for (let i = oldSlotChildNodes.length - 1; i >= 0; i--) {
816
+ const childNode = oldSlotChildNodes[i];
817
+ if (childNode['s-hn'] !== hostTagName && childNode['s-ol']) {
818
+ // // this child node in the old element is from another component
819
+ // // remove this node from the old slot's parent
820
+ // childNode.remove();
821
+ // and relocate it back to it's original location
822
+ parentReferenceNode(childNode).insertBefore(childNode, referenceNode(childNode));
823
+ // remove the old original location comment entirely
824
+ // later on the patch function will know what to do
825
+ // and move this to the correct spot in need be
826
+ childNode['s-ol'].remove();
827
+ childNode['s-ol'] = undefined;
828
+ checkSlotRelocate = true;
829
+ }
830
+ if (recursive) {
831
+ putBackInOriginalLocation(childNode, recursive);
832
+ }
833
+ }
834
+ plt.$flags$ &= ~1 /* PLATFORM_FLAGS.isTmpDisconnected */;
835
+ };
753
836
  const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
754
- let containerElm = (parentElm);
837
+ let containerElm = ((parentElm['s-cr'] && parentElm['s-cr'].parentNode) || parentElm);
755
838
  let childNode;
756
839
  if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
757
840
  containerElm = containerElm.shadowRoot;
758
841
  }
759
842
  for (; startIdx <= endIdx; ++startIdx) {
760
843
  if (vnodes[startIdx]) {
761
- childNode = createElm(null, parentVNode, startIdx);
844
+ childNode = createElm(null, parentVNode, startIdx, parentElm);
762
845
  if (childNode) {
763
846
  vnodes[startIdx].$elm$ = childNode;
764
- containerElm.insertBefore(childNode, before);
847
+ containerElm.insertBefore(childNode, referenceNode(before) );
765
848
  }
766
849
  }
767
850
  }
@@ -770,6 +853,20 @@ const removeVnodes = (vnodes, startIdx, endIdx, vnode, elm) => {
770
853
  for (; startIdx <= endIdx; ++startIdx) {
771
854
  if ((vnode = vnodes[startIdx])) {
772
855
  elm = vnode.$elm$;
856
+ {
857
+ // we're removing this element
858
+ // so it's possible we need to show slot fallback content now
859
+ checkSlotFallbackVisibility = true;
860
+ if (elm['s-ol']) {
861
+ // remove the original location comment
862
+ elm['s-ol'].remove();
863
+ }
864
+ else {
865
+ // it's possible that child nodes of the node
866
+ // that's being removed are slot nodes
867
+ putBackInOriginalLocation(elm, true);
868
+ }
869
+ }
773
870
  // remove the vnode's element from the dom
774
871
  elm.remove();
775
872
  }
@@ -885,6 +982,23 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
885
982
  newEndVnode = newCh[--newEndIdx];
886
983
  }
887
984
  else if (isSameVnode(oldStartVnode, newEndVnode)) {
985
+ // case: "Vnode moved right"
986
+ //
987
+ // We've found that the last node in our window on the new children is
988
+ // the same VNode as the _first_ node in our window on the old children
989
+ // we're dealing with now. Visually, this is the layout of these two
990
+ // nodes:
991
+ //
992
+ // newCh: [..., newStartVnode , ... , newEndVnode , ...]
993
+ // ^^^^^^^^^^^
994
+ // oldCh: [..., oldStartVnode , ... , oldEndVnode , ...]
995
+ // ^^^^^^^^^^^^^
996
+ //
997
+ // In this situation we need to patch `newEndVnode` onto `oldStartVnode`
998
+ // and move the DOM element for `oldStartVnode`.
999
+ if ((oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) {
1000
+ putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);
1001
+ }
888
1002
  patch(oldStartVnode, newEndVnode);
889
1003
  // We need to move the element for `oldStartVnode` into a position which
890
1004
  // will be appropriate for `newEndVnode`. For this we can use
@@ -908,6 +1022,24 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
908
1022
  newEndVnode = newCh[--newEndIdx];
909
1023
  }
910
1024
  else if (isSameVnode(oldEndVnode, newStartVnode)) {
1025
+ // case: "Vnode moved left"
1026
+ //
1027
+ // We've found that the first node in our window on the new children is
1028
+ // the same VNode as the _last_ node in our window on the old children.
1029
+ // Visually, this is the layout of these two nodes:
1030
+ //
1031
+ // newCh: [..., newStartVnode , ... , newEndVnode , ...]
1032
+ // ^^^^^^^^^^^^^
1033
+ // oldCh: [..., oldStartVnode , ... , oldEndVnode , ...]
1034
+ // ^^^^^^^^^^^
1035
+ //
1036
+ // In this situation we need to patch `newStartVnode` onto `oldEndVnode`
1037
+ // (which will handle updating any changed attributes, reconciling their
1038
+ // children etc) but we also need to move the DOM node to which
1039
+ // `oldEndVnode` corresponds.
1040
+ if ((oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) {
1041
+ putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);
1042
+ }
911
1043
  patch(oldEndVnode, newStartVnode);
912
1044
  // We've already checked above if `oldStartVnode` and `newStartVnode` are
913
1045
  // the same node, so since we're here we know that they are not. Thus we
@@ -924,13 +1056,13 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
924
1056
  // the key of the first new child OR the build is not using `key`
925
1057
  // attributes at all. In either case we need to create a new element
926
1058
  // for the new node.
927
- node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx);
1059
+ node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx, parentElm);
928
1060
  newStartVnode = newCh[++newStartIdx];
929
1061
  }
930
1062
  if (node) {
931
1063
  // if we created a new node then handle inserting it to the DOM
932
1064
  {
933
- oldStartVnode.$elm$.parentNode.insertBefore(node, oldStartVnode.$elm$);
1065
+ parentReferenceNode(oldStartVnode.$elm$).insertBefore(node, referenceNode(oldStartVnode.$elm$));
934
1066
  }
935
1067
  }
936
1068
  }
@@ -967,10 +1099,21 @@ const isSameVnode = (leftVNode, rightVNode) => {
967
1099
  // compare if two vnode to see if they're "technically" the same
968
1100
  // need to have the same element tag, and same key to be the same
969
1101
  if (leftVNode.$tag$ === rightVNode.$tag$) {
1102
+ if (leftVNode.$tag$ === 'slot') {
1103
+ return leftVNode.$name$ === rightVNode.$name$;
1104
+ }
970
1105
  return true;
971
1106
  }
972
1107
  return false;
973
1108
  };
1109
+ const referenceNode = (node) => {
1110
+ // this node was relocated to a new location in the dom
1111
+ // because of some other component's slot
1112
+ // but we still have an html comment in place of where
1113
+ // it's original location was according to it's original vdom
1114
+ return (node && node['s-ol']) || node;
1115
+ };
1116
+ const parentReferenceNode = (node) => (node['s-ol'] ? node['s-ol'] : node).parentNode;
974
1117
  /**
975
1118
  * Handle reconciling an outdated VNode with a new one which corresponds to
976
1119
  * it. This function handles flushing updates to the DOM and reconciling the
@@ -985,6 +1128,7 @@ const patch = (oldVNode, newVNode) => {
985
1128
  const newChildren = newVNode.$children$;
986
1129
  const tag = newVNode.$tag$;
987
1130
  const text = newVNode.$text$;
1131
+ let defaultHolder;
988
1132
  if (text === null) {
989
1133
  {
990
1134
  // test if we're rendering an svg element, or still rendering nodes inside of one
@@ -1023,14 +1167,150 @@ const patch = (oldVNode, newVNode) => {
1023
1167
  isSvgMode = false;
1024
1168
  }
1025
1169
  }
1170
+ else if ((defaultHolder = elm['s-cr'])) {
1171
+ // this element has slotted content
1172
+ defaultHolder.parentNode.textContent = text;
1173
+ }
1026
1174
  else if (oldVNode.$text$ !== text) {
1027
1175
  // update the text content for the text only vnode
1028
1176
  // and also only if the text is different than before
1029
1177
  elm.data = text;
1030
1178
  }
1031
1179
  };
1180
+ const updateFallbackSlotVisibility = (elm) => {
1181
+ // tslint:disable-next-line: prefer-const
1182
+ const childNodes = elm.childNodes;
1183
+ let childNode;
1184
+ let i;
1185
+ let ilen;
1186
+ let j;
1187
+ let slotNameAttr;
1188
+ let nodeType;
1189
+ for (i = 0, ilen = childNodes.length; i < ilen; i++) {
1190
+ childNode = childNodes[i];
1191
+ if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1192
+ if (childNode['s-sr']) {
1193
+ // this is a slot fallback node
1194
+ // get the slot name for this slot reference node
1195
+ slotNameAttr = childNode['s-sn'];
1196
+ // by default always show a fallback slot node
1197
+ // then hide it if there are other slots in the light dom
1198
+ childNode.hidden = false;
1199
+ for (j = 0; j < ilen; j++) {
1200
+ nodeType = childNodes[j].nodeType;
1201
+ if (childNodes[j]['s-hn'] !== childNode['s-hn'] || slotNameAttr !== '') {
1202
+ // this sibling node is from a different component OR is a named fallback slot node
1203
+ if (nodeType === 1 /* NODE_TYPE.ElementNode */ && slotNameAttr === childNodes[j].getAttribute('slot')) {
1204
+ childNode.hidden = true;
1205
+ break;
1206
+ }
1207
+ }
1208
+ else {
1209
+ // this is a default fallback slot node
1210
+ // any element or text node (with content)
1211
+ // should hide the default fallback slot node
1212
+ if (nodeType === 1 /* NODE_TYPE.ElementNode */ ||
1213
+ (nodeType === 3 /* NODE_TYPE.TextNode */ && childNodes[j].textContent.trim() !== '')) {
1214
+ childNode.hidden = true;
1215
+ break;
1216
+ }
1217
+ }
1218
+ }
1219
+ }
1220
+ // keep drilling down
1221
+ updateFallbackSlotVisibility(childNode);
1222
+ }
1223
+ }
1224
+ };
1225
+ const relocateNodes = [];
1226
+ const relocateSlotContent = (elm) => {
1227
+ // tslint:disable-next-line: prefer-const
1228
+ let childNode;
1229
+ let node;
1230
+ let hostContentNodes;
1231
+ let slotNameAttr;
1232
+ let relocateNodeData;
1233
+ let j;
1234
+ let i = 0;
1235
+ const childNodes = elm.childNodes;
1236
+ const ilen = childNodes.length;
1237
+ for (; i < ilen; i++) {
1238
+ childNode = childNodes[i];
1239
+ if (childNode['s-sr'] && (node = childNode['s-cr']) && node.parentNode) {
1240
+ // first got the content reference comment node
1241
+ // then we got it's parent, which is where all the host content is in now
1242
+ hostContentNodes = node.parentNode.childNodes;
1243
+ slotNameAttr = childNode['s-sn'];
1244
+ for (j = hostContentNodes.length - 1; j >= 0; j--) {
1245
+ node = hostContentNodes[j];
1246
+ if (!node['s-cn'] && !node['s-nr'] && node['s-hn'] !== childNode['s-hn']) {
1247
+ // let's do some relocating to its new home
1248
+ // but never relocate a content reference node
1249
+ // that is suppose to always represent the original content location
1250
+ if (isNodeLocatedInSlot(node, slotNameAttr)) {
1251
+ // it's possible we've already decided to relocate this node
1252
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1253
+ // made some changes to slots
1254
+ // let's make sure we also double check
1255
+ // fallbacks are correctly hidden or shown
1256
+ checkSlotFallbackVisibility = true;
1257
+ node['s-sn'] = node['s-sn'] || slotNameAttr;
1258
+ if (relocateNodeData) {
1259
+ // previously we never found a slot home for this node
1260
+ // but turns out we did, so let's remember it now
1261
+ relocateNodeData.$slotRefNode$ = childNode;
1262
+ }
1263
+ else {
1264
+ // add to our list of nodes to relocate
1265
+ relocateNodes.push({
1266
+ $slotRefNode$: childNode,
1267
+ $nodeToRelocate$: node,
1268
+ });
1269
+ }
1270
+ if (node['s-sr']) {
1271
+ relocateNodes.map((relocateNode) => {
1272
+ if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node['s-sn'])) {
1273
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
1274
+ if (relocateNodeData && !relocateNode.$slotRefNode$) {
1275
+ relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;
1276
+ }
1277
+ }
1278
+ });
1279
+ }
1280
+ }
1281
+ else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
1282
+ // so far this element does not have a slot home, not setting slotRefNode on purpose
1283
+ // if we never find a home for this element then we'll need to hide it
1284
+ relocateNodes.push({
1285
+ $nodeToRelocate$: node,
1286
+ });
1287
+ }
1288
+ }
1289
+ }
1290
+ }
1291
+ if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1292
+ relocateSlotContent(childNode);
1293
+ }
1294
+ }
1295
+ };
1296
+ const isNodeLocatedInSlot = (nodeToRelocate, slotNameAttr) => {
1297
+ if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1298
+ if (nodeToRelocate.getAttribute('slot') === null && slotNameAttr === '') {
1299
+ return true;
1300
+ }
1301
+ if (nodeToRelocate.getAttribute('slot') === slotNameAttr) {
1302
+ return true;
1303
+ }
1304
+ return false;
1305
+ }
1306
+ if (nodeToRelocate['s-sn'] === slotNameAttr) {
1307
+ return true;
1308
+ }
1309
+ return slotNameAttr === '';
1310
+ };
1032
1311
  const renderVdom = (hostRef, renderFnResults) => {
1033
1312
  const hostElm = hostRef.$hostElement$;
1313
+ const cmpMeta = hostRef.$cmpMeta$;
1034
1314
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
1035
1315
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
1036
1316
  hostTagName = hostElm.tagName;
@@ -1041,8 +1321,90 @@ const renderVdom = (hostRef, renderFnResults) => {
1041
1321
  {
1042
1322
  scopeId = hostElm['s-sc'];
1043
1323
  }
1324
+ {
1325
+ contentRef = hostElm['s-cr'];
1326
+ useNativeShadowDom = (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) !== 0;
1327
+ // always reset
1328
+ checkSlotFallbackVisibility = false;
1329
+ }
1044
1330
  // synchronous patch
1045
1331
  patch(oldVNode, rootVnode);
1332
+ {
1333
+ // while we're moving nodes around existing nodes, temporarily disable
1334
+ // the disconnectCallback from working
1335
+ plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1336
+ if (checkSlotRelocate) {
1337
+ relocateSlotContent(rootVnode.$elm$);
1338
+ let relocateData;
1339
+ let nodeToRelocate;
1340
+ let orgLocationNode;
1341
+ let parentNodeRef;
1342
+ let insertBeforeNode;
1343
+ let refNode;
1344
+ let i = 0;
1345
+ for (; i < relocateNodes.length; i++) {
1346
+ relocateData = relocateNodes[i];
1347
+ nodeToRelocate = relocateData.$nodeToRelocate$;
1348
+ if (!nodeToRelocate['s-ol']) {
1349
+ // add a reference node marking this node's original location
1350
+ // keep a reference to this node for later lookups
1351
+ orgLocationNode =
1352
+ doc.createTextNode('');
1353
+ orgLocationNode['s-nr'] = nodeToRelocate;
1354
+ nodeToRelocate.parentNode.insertBefore((nodeToRelocate['s-ol'] = orgLocationNode), nodeToRelocate);
1355
+ }
1356
+ }
1357
+ for (i = 0; i < relocateNodes.length; i++) {
1358
+ relocateData = relocateNodes[i];
1359
+ nodeToRelocate = relocateData.$nodeToRelocate$;
1360
+ if (relocateData.$slotRefNode$) {
1361
+ // by default we're just going to insert it directly
1362
+ // after the slot reference node
1363
+ parentNodeRef = relocateData.$slotRefNode$.parentNode;
1364
+ insertBeforeNode = relocateData.$slotRefNode$.nextSibling;
1365
+ orgLocationNode = nodeToRelocate['s-ol'];
1366
+ while ((orgLocationNode = orgLocationNode.previousSibling)) {
1367
+ refNode = orgLocationNode['s-nr'];
1368
+ if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
1369
+ refNode = refNode.nextSibling;
1370
+ if (!refNode || !refNode['s-nr']) {
1371
+ insertBeforeNode = refNode;
1372
+ break;
1373
+ }
1374
+ }
1375
+ }
1376
+ if ((!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode) ||
1377
+ nodeToRelocate.nextSibling !== insertBeforeNode) {
1378
+ // we've checked that it's worth while to relocate
1379
+ // since that the node to relocate
1380
+ // has a different next sibling or parent relocated
1381
+ if (nodeToRelocate !== insertBeforeNode) {
1382
+ if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) {
1383
+ // probably a component in the index.html that doesn't have it's hostname set
1384
+ nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName;
1385
+ }
1386
+ // add it back to the dom but in its new home
1387
+ parentNodeRef.insertBefore(nodeToRelocate, insertBeforeNode);
1388
+ }
1389
+ }
1390
+ }
1391
+ else {
1392
+ // this node doesn't have a slot home to go to, so let's hide it
1393
+ if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
1394
+ nodeToRelocate.hidden = true;
1395
+ }
1396
+ }
1397
+ }
1398
+ }
1399
+ if (checkSlotFallbackVisibility) {
1400
+ updateFallbackSlotVisibility(rootVnode.$elm$);
1401
+ }
1402
+ // done moving nodes around
1403
+ // allow the disconnect callback to work again
1404
+ plt.$flags$ &= ~1 /* PLATFORM_FLAGS.isTmpDisconnected */;
1405
+ // always reset
1406
+ relocateNodes.length = 0;
1407
+ }
1046
1408
  };
1047
1409
  const attachToAncestor = (hostRef, ancestorComponent) => {
1048
1410
  if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent['s-p']) {
@@ -1435,6 +1797,15 @@ const connectedCallback = (elm) => {
1435
1797
  initializeClientHydrate(elm, cmpMeta.$tagName$, hostId, hostRef);
1436
1798
  }
1437
1799
  }
1800
+ if (!hostId) {
1801
+ // initUpdate
1802
+ // if the slot polyfill is required we'll need to put some nodes
1803
+ // in here to act as original content anchors as we move nodes around
1804
+ // host element has been connected to the DOM
1805
+ if ((cmpMeta.$flags$ & (4 /* CMP_FLAGS.hasSlotRelocation */ | 8 /* CMP_FLAGS.needsShadowDomShim */))) {
1806
+ setContentReference(elm);
1807
+ }
1808
+ }
1438
1809
  {
1439
1810
  // find the first ancestor component (if there is one) and register
1440
1811
  // this component as one of the actively loading child components for its ancestor
@@ -1477,6 +1848,17 @@ const connectedCallback = (elm) => {
1477
1848
  endConnected();
1478
1849
  }
1479
1850
  };
1851
+ const setContentReference = (elm) => {
1852
+ // only required when we're NOT using native shadow dom (slot)
1853
+ // or this browser doesn't support native shadow dom
1854
+ // and this host element was NOT created with SSR
1855
+ // let's pick out the inner content for slot projection
1856
+ // create a node to represent where the original
1857
+ // content was first placed, which is useful later on
1858
+ const contentRefElm = (elm['s-cr'] = doc.createComment(''));
1859
+ contentRefElm['s-cn'] = true;
1860
+ elm.insertBefore(contentRefElm, elm.firstChild);
1861
+ };
1480
1862
  const disconnectedCallback = (elm) => {
1481
1863
  if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
1482
1864
  const hostRef = getHostRef(elm);
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-562d2f5c.js');
5
+ const index = require('./index-4ae5dbd7.js');
6
6
 
7
7
  /*
8
8
  Stencil Client Patch Esm v2.21.0 | MIT Licensed | https://stenciljs.com
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy(JSON.parse("[[\"biggive-back-to-top_27.cjs\",[[1,\"biggive-campaign-card-filter-grid\",{\"spaceBelow\":[2,\"space-below\"],\"intro\":[1],\"searchText\":[1,\"search-text\"],\"placeholderText\":[1,\"placeholder-text\"],\"buttonText\":[1,\"button-text\"],\"categoryOptions\":[1,\"category-options\"],\"beneficiaryOptions\":[1,\"beneficiary-options\"],\"locationOptions\":[1,\"location-options\"],\"fundingOptions\":[1,\"funding-options\"],\"selectedSortByOption\":[1,\"selected-sort-by-option\"],\"selectedFilterCategory\":[1,\"selected-filter-category\"],\"selectedFilterBeneficiary\":[1,\"selected-filter-beneficiary\"],\"selectedFilterLocation\":[1,\"selected-filter-location\"],\"selectedFilterFunding\":[1,\"selected-filter-funding\"],\"filtersApplied\":[32]},[[0,\"doSelectChange\",\"doOptionSelectCompletedHandler\"]]],[1,\"biggive-campaign-card\",{\"spaceBelow\":[2,\"space-below\"],\"campaignType\":[1,\"campaign-type\"],\"banner\":[1],\"campaignTitle\":[1,\"campaign-title\"],\"organisationName\":[1,\"organisation-name\"],\"primaryFigureLabel\":[1,\"primary-figure-label\"],\"primaryFigureAmount\":[1,\"primary-figure-amount\"],\"secondaryFigureLabel\":[1,\"secondary-figure-label\"],\"secondaryFigureAmount\":[1,\"secondary-figure-amount\"],\"progressBarCounter\":[2,\"progress-bar-counter\"],\"donateButtonLabel\":[1,\"donate-button-label\"],\"donateButtonUrl\":[1,\"donate-button-url\"],\"donateButtonColourScheme\":[1,\"donate-button-colour-scheme\"],\"moreInfoButtonLabel\":[1,\"more-info-button-label\"],\"moreInfoButtonUrl\":[1,\"more-info-button-url\"],\"moreInfoButtonColourScheme\":[1,\"more-info-button-colour-scheme\"],\"isFutureCampaign\":[4,\"is-future-campaign\"],\"isPastCampaign\":[4,\"is-past-campaign\"],\"datetime\":[1]}],[1,\"biggive-campaign-highlights\",{\"spaceBelow\":[2,\"space-below\"],\"banner\":[1],\"campaignTitle\":[1,\"campaign-title\"],\"primaryFigureLabel\":[1,\"primary-figure-label\"],\"primaryFigureAmount\":[1,\"primary-figure-amount\"],\"secondaryFigureLabel\":[1,\"secondary-figure-label\"],\"secondaryFigureAmount\":[1,\"secondary-figure-amount\"],\"progressBarCounter\":[2,\"progress-bar-counter\"],\"primaryStatIcon\":[1,\"primary-stat-icon\"],\"primaryStatText\":[1,\"primary-stat-text\"],\"secondaryStatIcon\":[1,\"secondary-stat-icon\"],\"secondaryStatText\":[1,\"secondary-stat-text\"],\"championName\":[1,\"champion-name\"],\"championUrl\":[1,\"champion-url\"]}],[1,\"biggive-call-to-action\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"slugSize\":[2,\"slug-size\"],\"slugColour\":[1,\"slug-colour\"],\"slug\":[1],\"mainTitleColour\":[1,\"main-title-colour\"],\"mainTitleSize\":[2,\"main-title-size\"],\"mainTitle\":[1,\"main-title\"],\"subtitleSize\":[2,\"subtitle-size\"],\"subtitleColour\":[1,\"subtitle-colour\"],\"subtitle\":[1],\"teaserColour\":[1,\"teaser-colour\"],\"teaser\":[1],\"primaryButtonUrl\":[1,\"primary-button-url\"],\"primaryButtonLabel\":[1,\"primary-button-label\"],\"primaryButtonColourScheme\":[1,\"primary-button-colour-scheme\"],\"secondaryButtonUrl\":[1,\"secondary-button-url\"],\"secondaryButtonLabel\":[1,\"secondary-button-label\"],\"secondaryButtonColourScheme\":[1,\"secondary-button-colour-scheme\"]}],[1,\"biggive-footer\",{\"headingLevel\":[2,\"heading-level\"]}],[1,\"biggive-hero-image\",{\"spaceBelow\":[2,\"space-below\"],\"colourScheme\":[1,\"colour-scheme\"],\"slug\":[1],\"slugColour\":[1,\"slug-colour\"],\"logo\":[1],\"logoAltText\":[1,\"logo-alt-text\"],\"mainImage\":[1,\"main-image\"],\"mainImageAlignHorizontal\":[1,\"main-image-align-horizontal\"],\"mainImageAlignVertical\":[1,\"main-image-align-vertical\"],\"mainTitle\":[1,\"main-title\"],\"mainTitleColour\":[1,\"main-title-colour\"],\"teaser\":[1],\"teaserColour\":[1,\"teaser-colour\"],\"buttonUrl\":[1,\"button-url\"],\"buttonLabel\":[1,\"button-label\"],\"buttonColourScheme\":[1,\"button-colour-scheme\"]}],[1,\"biggive-image-feature\",{\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"imageUrl\":[1,\"image-url\"],\"imageAltText\":[1,\"image-alt-text\"],\"slug\":[1],\"slugColour\":[1,\"slug-colour\"],\"mainTitle\":[1,\"main-title\"],\"mainTitleColour\":[1,\"main-title-colour\"],\"teaser\":[1],\"teaserColour\":[1,\"teaser-colour\"],\"buttonUrl\":[1,\"button-url\"],\"buttonLabel\":[1,\"button-label\"],\"buttonColourScheme\":[1,\"button-colour-scheme\"]}],[1,\"biggive-main-menu\",{\"logoUrl\":[1,\"logo-url\"],\"closeMobileMenuFromOutside\":[64]}],[1,\"biggive-video-feature\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"videoUrl\":[1,\"video-url\"],\"slug\":[1],\"slugColour\":[1,\"slug-colour\"],\"mainTitle\":[1,\"main-title\"],\"mainTitleColour\":[1,\"main-title-colour\"],\"teaser\":[1],\"teaserColour\":[1,\"teaser-colour\"],\"buttonUrl\":[1,\"button-url\"],\"buttonLabel\":[1,\"button-label\"],\"buttonColourScheme\":[1,\"button-colour-scheme\"]}],[1,\"biggive-back-to-top\"],[1,\"biggive-branded-image\",{\"spaceBelow\":[2,\"space-below\"],\"imageUrl\":[1,\"image-url\"],\"logoUrl\":[1,\"logo-url\"],\"slug\":[1],\"charityName\":[1,\"charity-name\"],\"charityLocation\":[1,\"charity-location\"],\"charityUrl\":[1,\"charity-url\"]}],[1,\"biggive-grid\",{\"spaceBelow\":[2,\"space-below\"],\"columnCount\":[2,\"column-count\"],\"spaceBetween\":[4,\"space-between\"]}],[1,\"biggive-heading\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"colour\":[1],\"htmlElement\":[1,\"html-element\"],\"size\":[2],\"align\":[1],\"text\":[1],\"icon\":[4],\"iconColour\":[1,\"icon-colour\"]}],[1,\"biggive-image\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"imageUrl\":[1,\"image-url\"],\"imageAltText\":[1,\"image-alt-text\"],\"width\":[2],\"height\":[2],\"sizeUnit\":[1,\"size-unit\"]}],[1,\"biggive-page-column\"],[1,\"biggive-page-columns\",{\"spaceBelow\":[2,\"space-below\"]}],[1,\"biggive-page-section\",{\"spaceBelow\":[2,\"space-below\"],\"sectionStyleTop\":[1,\"section-style-top\"],\"sectionStyleBottom\":[1,\"section-style-bottom\"],\"colourScheme\":[1,\"colour-scheme\"],\"maxWidth\":[2,\"max-width\"],\"primaryFullBleed\":[4,\"primary-full-bleed\"]}],[1,\"biggive-quote\",{\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"quote\":[1],\"attribution\":[1]}],[0,\"biggive-social-icon\",{\"service\":[1],\"backgroundColour\":[1,\"background-colour\"],\"iconColour\":[1,\"icon-colour\"],\"wide\":[4],\"url\":[1]}],[1,\"biggive-totalizer\",{\"spaceBelow\":[2,\"space-below\"],\"primaryColour\":[1,\"primary-colour\"],\"primaryTextColour\":[1,\"primary-text-colour\"],\"secondaryColour\":[1,\"secondary-colour\"],\"secondaryTextColour\":[1,\"secondary-text-colour\"],\"mainMessage\":[1,\"main-message\"]}],[1,\"biggive-totalizer-ticker-item\",{\"figure\":[1],\"label\":[1]}],[1,\"biggive-form-field-select\",{\"selectedValue\":[1,\"selected-value\"],\"selectedLabel\":[1,\"selected-label\"],\"spaceBelow\":[2,\"space-below\"],\"placeholder\":[1]},[[0,\"doOptionSelect\",\"doOptionSelectCompletedHandler\"]]],[1,\"biggive-form-field-select-option\",{\"label\":[1],\"value\":[1],\"selectedValue\":[32],\"selectedLabel\":[32]}],[1,\"biggive-popup\",{\"openFromOutside\":[64],\"closeFromOutside\":[64]}],[1,\"biggive-progress-bar\",{\"spaceBelow\":[2,\"space-below\"],\"colourScheme\":[1,\"colour-scheme\"],\"counter\":[2]}],[0,\"biggive-misc-icon\",{\"backgroundColour\":[1,\"background-colour\"],\"iconColour\":[1,\"icon-colour\"],\"icon\":[1],\"url\":[1]}],[1,\"biggive-button\",{\"spaceBelow\":[2,\"space-below\"],\"colourScheme\":[1,\"colour-scheme\"],\"label\":[1],\"url\":[1],\"openInNewTab\":[4,\"open-in-new-tab\"],\"fullWidth\":[4,\"full-width\"],\"size\":[1],\"rounded\":[4],\"centered\":[4],\"buttonId\":[1,\"button-id\"]}]]],[\"biggive-article-card.cjs\",[[1,\"biggive-article-card\",{\"spaceBelow\":[2,\"space-below\"],\"backgroundColour\":[1,\"background-colour\"],\"backgroundColourHover\":[1,\"background-colour-hover\"],\"textColour\":[1,\"text-colour\"],\"slug\":[1],\"date\":[1],\"mainTitle\":[1,\"main-title\"],\"imageUrl\":[1,\"image-url\"],\"imageAltText\":[1,\"image-alt-text\"],\"imageLabel\":[1,\"image-label\"],\"buttonLabel\":[1,\"button-label\"],\"buttonUrl\":[1,\"button-url\"]}]]],[\"biggive-basic-card.cjs\",[[1,\"biggive-basic-card\",{\"spaceBelow\":[2,\"space-below\"],\"backgroundColour\":[1,\"background-colour\"],\"backgroundImageUrl\":[1,\"background-image-url\"],\"cardColour\":[1,\"card-colour\"],\"textColour\":[1,\"text-colour\"],\"mainTitle\":[1,\"main-title\"],\"subtitle\":[1],\"teaser\":[1],\"icon\":[4],\"iconColour\":[1,\"icon-colour\"],\"buttonLabel\":[1,\"button-label\"],\"buttonUrl\":[1,\"button-url\"],\"buttonColourScheme\":[1,\"button-colour-scheme\"],\"clipBottomLeftCorner\":[4,\"clip-bottom-left-corner\"],\"clipTopRightCorner\":[4,\"clip-top-right-corner\"],\"headingLevel\":[2,\"heading-level\"]}]]],[\"biggive-search.cjs\",[[1,\"biggive-search\",{\"searchText\":[1,\"search-text\"],\"placeholderText\":[1,\"placeholder-text\"],\"buttonText\":[1,\"button-text\"]}]]],[\"biggive-beneficiary-icon.cjs\",[[0,\"biggive-beneficiary-icon\",{\"backgroundColour\":[1,\"background-colour\"],\"iconColour\":[1,\"icon-colour\"],\"icon\":[1],\"label\":[1],\"url\":[1]}]]],[\"biggive-biography-card.cjs\",[[1,\"biggive-biography-card\",{\"spaceBelow\":[2,\"space-below\"],\"imageUrl\":[1,\"image-url\"],\"fullName\":[1,\"full-name\"],\"jobTitle\":[1,\"job-title\"]}]]],[\"biggive-boxed-content.cjs\",[[1,\"biggive-boxed-content\",{\"spaceBelow\":[2,\"space-below\"],\"verticalPadding\":[2,\"vertical-padding\"],\"horizontalPadding\":[2,\"horizontal-padding\"],\"backgroundColour\":[1,\"background-colour\"],\"shadow\":[4]}]]],[\"biggive-category-icon.cjs\",[[0,\"biggive-category-icon\",{\"backgroundColour\":[1,\"background-colour\"],\"iconColour\":[1,\"icon-colour\"],\"icon\":[1],\"label\":[1],\"url\":[1]}]]],[\"biggive-form.cjs\",[[1,\"biggive-form\"]]],[\"biggive-formatted-text.cjs\",[[1,\"biggive-formatted-text\",{\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"maxWidth\":[2,\"max-width\"]}]]],[\"biggive-header.cjs\",[[1,\"biggive-header\",{\"spaceBelow\":[2,\"space-below\"],\"logoUrl\":[1,\"logo-url\"],\"closeMenuFromOutside\":[64]}]]],[\"biggive-icon-group.cjs\",[[1,\"biggive-icon-group\",{\"spaceBelow\":[2,\"space-below\"],\"label\":[1]}]]],[\"biggive-nav-group.cjs\",[[1,\"biggive-nav-group\",{\"inline\":[4]}]]],[\"biggive-nav-item.cjs\",[[1,\"biggive-nav-item\",{\"url\":[1],\"label\":[1],\"iconColour\":[1,\"icon-colour\"]}]]],[\"biggive-popup-standalone.cjs\",[[1,\"biggive-popup-standalone\"]]],[\"biggive-tab.cjs\",[[1,\"biggive-tab\",{\"tabTitle\":[1,\"tab-title\"]}]]],[\"biggive-tabbed-content.cjs\",[[1,\"biggive-tabbed-content\",{\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"]}]]],[\"biggive-text-input.cjs\",[[1,\"biggive-text-input\"]]],[\"biggive-video.cjs\",[[1,\"biggive-video\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"videoUrl\":[1,\"video-url\"]}]]]]"), options);
17
+ return index.bootstrapLazy(JSON.parse("[[\"biggive-back-to-top_27.cjs\",[[1,\"biggive-campaign-card-filter-grid\",{\"spaceBelow\":[2,\"space-below\"],\"intro\":[1],\"searchText\":[1,\"search-text\"],\"placeholderText\":[1,\"placeholder-text\"],\"buttonText\":[1,\"button-text\"],\"categoryOptions\":[1,\"category-options\"],\"beneficiaryOptions\":[1,\"beneficiary-options\"],\"locationOptions\":[1,\"location-options\"],\"fundingOptions\":[1,\"funding-options\"],\"selectedSortByOption\":[1,\"selected-sort-by-option\"],\"selectedFilterCategory\":[1,\"selected-filter-category\"],\"selectedFilterBeneficiary\":[1,\"selected-filter-beneficiary\"],\"selectedFilterLocation\":[1,\"selected-filter-location\"],\"selectedFilterFunding\":[1,\"selected-filter-funding\"],\"filtersApplied\":[32]},[[0,\"doSelectChange\",\"doOptionSelectCompletedHandler\"]]],[1,\"biggive-campaign-card\",{\"spaceBelow\":[2,\"space-below\"],\"campaignType\":[1,\"campaign-type\"],\"banner\":[1],\"campaignTitle\":[1,\"campaign-title\"],\"organisationName\":[1,\"organisation-name\"],\"primaryFigureLabel\":[1,\"primary-figure-label\"],\"primaryFigureAmount\":[1,\"primary-figure-amount\"],\"secondaryFigureLabel\":[1,\"secondary-figure-label\"],\"secondaryFigureAmount\":[1,\"secondary-figure-amount\"],\"progressBarCounter\":[2,\"progress-bar-counter\"],\"donateButtonLabel\":[1,\"donate-button-label\"],\"donateButtonUrl\":[1,\"donate-button-url\"],\"donateButtonColourScheme\":[1,\"donate-button-colour-scheme\"],\"moreInfoButtonLabel\":[1,\"more-info-button-label\"],\"moreInfoButtonUrl\":[1,\"more-info-button-url\"],\"moreInfoButtonColourScheme\":[1,\"more-info-button-colour-scheme\"],\"isFutureCampaign\":[4,\"is-future-campaign\"],\"isPastCampaign\":[4,\"is-past-campaign\"],\"datetime\":[1]}],[1,\"biggive-campaign-highlights\",{\"spaceBelow\":[2,\"space-below\"],\"banner\":[1],\"campaignTitle\":[1,\"campaign-title\"],\"primaryFigureLabel\":[1,\"primary-figure-label\"],\"primaryFigureAmount\":[1,\"primary-figure-amount\"],\"secondaryFigureLabel\":[1,\"secondary-figure-label\"],\"secondaryFigureAmount\":[1,\"secondary-figure-amount\"],\"progressBarCounter\":[2,\"progress-bar-counter\"],\"primaryStatIcon\":[1,\"primary-stat-icon\"],\"primaryStatText\":[1,\"primary-stat-text\"],\"secondaryStatIcon\":[1,\"secondary-stat-icon\"],\"secondaryStatText\":[1,\"secondary-stat-text\"],\"championName\":[1,\"champion-name\"],\"championUrl\":[1,\"champion-url\"]}],[1,\"biggive-call-to-action\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"slugSize\":[2,\"slug-size\"],\"slugColour\":[1,\"slug-colour\"],\"slug\":[1],\"mainTitleColour\":[1,\"main-title-colour\"],\"mainTitleSize\":[2,\"main-title-size\"],\"mainTitle\":[1,\"main-title\"],\"subtitleSize\":[2,\"subtitle-size\"],\"subtitleColour\":[1,\"subtitle-colour\"],\"subtitle\":[1],\"teaserColour\":[1,\"teaser-colour\"],\"teaser\":[1],\"primaryButtonUrl\":[1,\"primary-button-url\"],\"primaryButtonLabel\":[1,\"primary-button-label\"],\"primaryButtonColourScheme\":[1,\"primary-button-colour-scheme\"],\"secondaryButtonUrl\":[1,\"secondary-button-url\"],\"secondaryButtonLabel\":[1,\"secondary-button-label\"],\"secondaryButtonColourScheme\":[1,\"secondary-button-colour-scheme\"]}],[1,\"biggive-footer\",{\"headingLevel\":[2,\"heading-level\"]}],[1,\"biggive-hero-image\",{\"spaceBelow\":[2,\"space-below\"],\"colourScheme\":[1,\"colour-scheme\"],\"slug\":[1],\"slugColour\":[1,\"slug-colour\"],\"logo\":[1],\"logoAltText\":[1,\"logo-alt-text\"],\"mainImage\":[1,\"main-image\"],\"mainImageAlignHorizontal\":[1,\"main-image-align-horizontal\"],\"mainImageAlignVertical\":[1,\"main-image-align-vertical\"],\"mainTitle\":[1,\"main-title\"],\"mainTitleColour\":[1,\"main-title-colour\"],\"teaser\":[1],\"teaserColour\":[1,\"teaser-colour\"],\"buttonUrl\":[1,\"button-url\"],\"buttonLabel\":[1,\"button-label\"],\"buttonColourScheme\":[1,\"button-colour-scheme\"]}],[1,\"biggive-image-feature\",{\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"imageUrl\":[1,\"image-url\"],\"imageAltText\":[1,\"image-alt-text\"],\"slug\":[1],\"slugColour\":[1,\"slug-colour\"],\"mainTitle\":[1,\"main-title\"],\"mainTitleColour\":[1,\"main-title-colour\"],\"teaser\":[1],\"teaserColour\":[1,\"teaser-colour\"],\"buttonUrl\":[1,\"button-url\"],\"buttonLabel\":[1,\"button-label\"],\"buttonColourScheme\":[1,\"button-colour-scheme\"]}],[1,\"biggive-main-menu\",{\"logoUrl\":[1,\"logo-url\"],\"closeMobileMenuFromOutside\":[64]}],[1,\"biggive-video-feature\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"videoUrl\":[1,\"video-url\"],\"slug\":[1],\"slugColour\":[1,\"slug-colour\"],\"mainTitle\":[1,\"main-title\"],\"mainTitleColour\":[1,\"main-title-colour\"],\"teaser\":[1],\"teaserColour\":[1,\"teaser-colour\"],\"buttonUrl\":[1,\"button-url\"],\"buttonLabel\":[1,\"button-label\"],\"buttonColourScheme\":[1,\"button-colour-scheme\"]}],[1,\"biggive-back-to-top\"],[1,\"biggive-branded-image\",{\"spaceBelow\":[2,\"space-below\"],\"imageUrl\":[1,\"image-url\"],\"logoUrl\":[1,\"logo-url\"],\"slug\":[1],\"charityName\":[1,\"charity-name\"],\"charityLocation\":[1,\"charity-location\"],\"charityUrl\":[1,\"charity-url\"]}],[1,\"biggive-grid\",{\"spaceBelow\":[2,\"space-below\"],\"columnCount\":[2,\"column-count\"],\"spaceBetween\":[4,\"space-between\"]}],[1,\"biggive-heading\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"colour\":[1],\"htmlElement\":[1,\"html-element\"],\"size\":[2],\"align\":[1],\"text\":[1],\"icon\":[4],\"iconColour\":[1,\"icon-colour\"]}],[1,\"biggive-image\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"imageUrl\":[1,\"image-url\"],\"imageAltText\":[1,\"image-alt-text\"],\"width\":[2],\"height\":[2],\"sizeUnit\":[1,\"size-unit\"]}],[1,\"biggive-page-column\"],[1,\"biggive-page-columns\",{\"spaceBelow\":[2,\"space-below\"]}],[1,\"biggive-page-section\",{\"spaceBelow\":[2,\"space-below\"],\"sectionStyleTop\":[1,\"section-style-top\"],\"sectionStyleBottom\":[1,\"section-style-bottom\"],\"colourScheme\":[1,\"colour-scheme\"],\"maxWidth\":[2,\"max-width\"],\"primaryFullBleed\":[4,\"primary-full-bleed\"]}],[1,\"biggive-quote\",{\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"quote\":[1],\"attribution\":[1]}],[0,\"biggive-social-icon\",{\"service\":[1],\"backgroundColour\":[1,\"background-colour\"],\"iconColour\":[1,\"icon-colour\"],\"wide\":[4],\"url\":[1]}],[1,\"biggive-totalizer\",{\"spaceBelow\":[2,\"space-below\"],\"primaryColour\":[1,\"primary-colour\"],\"primaryTextColour\":[1,\"primary-text-colour\"],\"secondaryColour\":[1,\"secondary-colour\"],\"secondaryTextColour\":[1,\"secondary-text-colour\"],\"mainMessage\":[1,\"main-message\"]}],[1,\"biggive-totalizer-ticker-item\",{\"figure\":[1],\"label\":[1]}],[1,\"biggive-form-field-select\",{\"selectedValue\":[1,\"selected-value\"],\"selectedLabel\":[1,\"selected-label\"],\"spaceBelow\":[2,\"space-below\"],\"placeholder\":[1]},[[0,\"doOptionSelect\",\"doOptionSelectCompletedHandler\"]]],[1,\"biggive-form-field-select-option\",{\"label\":[1],\"value\":[1],\"selectedValue\":[32],\"selectedLabel\":[32]}],[1,\"biggive-popup\",{\"openFromOutside\":[64],\"closeFromOutside\":[64]}],[1,\"biggive-progress-bar\",{\"spaceBelow\":[2,\"space-below\"],\"colourScheme\":[1,\"colour-scheme\"],\"counter\":[2]}],[0,\"biggive-misc-icon\",{\"backgroundColour\":[1,\"background-colour\"],\"iconColour\":[1,\"icon-colour\"],\"icon\":[1],\"url\":[1]}],[1,\"biggive-button\",{\"spaceBelow\":[2,\"space-below\"],\"colourScheme\":[1,\"colour-scheme\"],\"label\":[1],\"url\":[1],\"openInNewTab\":[4,\"open-in-new-tab\"],\"fullWidth\":[4,\"full-width\"],\"size\":[1],\"rounded\":[4],\"centered\":[4],\"buttonId\":[1,\"button-id\"]}]]],[\"biggive-article-card.cjs\",[[1,\"biggive-article-card\",{\"spaceBelow\":[2,\"space-below\"],\"backgroundColour\":[1,\"background-colour\"],\"backgroundColourHover\":[1,\"background-colour-hover\"],\"textColour\":[1,\"text-colour\"],\"slug\":[1],\"date\":[1],\"mainTitle\":[1,\"main-title\"],\"imageUrl\":[1,\"image-url\"],\"imageAltText\":[1,\"image-alt-text\"],\"imageLabel\":[1,\"image-label\"],\"buttonLabel\":[1,\"button-label\"],\"buttonUrl\":[1,\"button-url\"]}]]],[\"biggive-basic-card.cjs\",[[1,\"biggive-basic-card\",{\"spaceBelow\":[2,\"space-below\"],\"backgroundColour\":[1,\"background-colour\"],\"backgroundImageUrl\":[1,\"background-image-url\"],\"cardColour\":[1,\"card-colour\"],\"textColour\":[1,\"text-colour\"],\"mainTitle\":[1,\"main-title\"],\"subtitle\":[1],\"teaser\":[1],\"icon\":[4],\"iconColour\":[1,\"icon-colour\"],\"buttonLabel\":[1,\"button-label\"],\"buttonUrl\":[1,\"button-url\"],\"buttonColourScheme\":[1,\"button-colour-scheme\"],\"clipBottomLeftCorner\":[4,\"clip-bottom-left-corner\"],\"clipTopRightCorner\":[4,\"clip-top-right-corner\"],\"headingLevel\":[2,\"heading-level\"]}]]],[\"biggive-search.cjs\",[[1,\"biggive-search\",{\"searchText\":[1,\"search-text\"],\"placeholderText\":[1,\"placeholder-text\"],\"buttonText\":[1,\"button-text\"]}]]],[\"biggive-beneficiary-icon.cjs\",[[0,\"biggive-beneficiary-icon\",{\"backgroundColour\":[1,\"background-colour\"],\"iconColour\":[1,\"icon-colour\"],\"icon\":[1],\"label\":[1],\"url\":[1]}]]],[\"biggive-biography-card.cjs\",[[1,\"biggive-biography-card\",{\"spaceBelow\":[2,\"space-below\"],\"imageUrl\":[1,\"image-url\"],\"fullName\":[1,\"full-name\"],\"jobTitle\":[1,\"job-title\"]}]]],[\"biggive-boxed-content.cjs\",[[1,\"biggive-boxed-content\",{\"spaceBelow\":[2,\"space-below\"],\"verticalPadding\":[2,\"vertical-padding\"],\"horizontalPadding\":[2,\"horizontal-padding\"],\"backgroundColour\":[1,\"background-colour\"],\"shadow\":[4]}]]],[\"biggive-category-icon.cjs\",[[0,\"biggive-category-icon\",{\"backgroundColour\":[1,\"background-colour\"],\"iconColour\":[1,\"icon-colour\"],\"icon\":[1],\"label\":[1],\"url\":[1]}]]],[\"biggive-form.cjs\",[[1,\"biggive-form\"]]],[\"biggive-formatted-text.cjs\",[[1,\"biggive-formatted-text\",{\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"],\"maxWidth\":[2,\"max-width\"]}]]],[\"biggive-header.cjs\",[[1,\"biggive-header\",{\"spaceBelow\":[2,\"space-below\"],\"logoUrl\":[1,\"logo-url\"],\"closeMenuFromOutside\":[64]}]]],[\"biggive-icon-group.cjs\",[[1,\"biggive-icon-group\",{\"spaceBelow\":[2,\"space-below\"],\"label\":[1]}]]],[\"biggive-nav-group.cjs\",[[1,\"biggive-nav-group\",{\"inline\":[4]}]]],[\"biggive-nav-item.cjs\",[[1,\"biggive-nav-item\",{\"url\":[1],\"label\":[1],\"iconColour\":[1,\"icon-colour\"]}]]],[\"biggive-popup-standalone.cjs\",[[1,\"biggive-popup-standalone\"]]],[\"biggive-tab.cjs\",[[1,\"biggive-tab\",{\"tabTitle\":[1,\"tab-title\"]}]]],[\"biggive-tabbed-content.cjs\",[[1,\"biggive-tabbed-content\",{\"spaceBelow\":[2,\"space-below\"],\"defaultTextColour\":[1,\"default-text-colour\"]}]]],[\"biggive-table.cjs\",[[4,\"biggive-table\",{\"spaceBelow\":[2,\"space-below\"],\"headerTextColour\":[1,\"header-text-colour\"],\"headerBackgroundColour\":[1,\"header-background-colour\"],\"bodyTextColour\":[1,\"body-text-colour\"],\"bodyBackgroundColour\":[1,\"body-background-colour\"]}]]],[\"biggive-text-input.cjs\",[[1,\"biggive-text-input\"]]],[\"biggive-video.cjs\",[[1,\"biggive-video\",{\"spaceAbove\":[2,\"space-above\"],\"spaceBelow\":[2,\"space-below\"],\"videoUrl\":[1,\"video-url\"]}]]]]"), options);
18
18
  });
19
19
  };
20
20
 
@@ -41,6 +41,7 @@
41
41
  "./components/biggive-social-icon/biggive-social-icon.js",
42
42
  "./components/biggive-tab/biggive-tab.js",
43
43
  "./components/biggive-tabbed-content/biggive-tabbed-content.js",
44
+ "./components/biggive-table/biggive-table.js",
44
45
  "./components/biggive-totalizer/biggive-totalizer.js",
45
46
  "./components/biggive-totalizer-ticker-item/biggive-totalizer-ticker-item.js",
46
47
  "./components/biggive-video/biggive-video.js",