@biggive/components 202406131338.0.0 → 202406211443.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 (137) hide show
  1. package/dist/biggive/biggive.esm.js +1 -1
  2. package/dist/biggive/biggive.esm.js.map +1 -1
  3. package/dist/biggive/p-03e72a1b.entry.js +2 -0
  4. package/dist/biggive/{p-2e83d695.entry.js → p-09533b1f.entry.js} +2 -2
  5. package/dist/biggive/{p-81c2fba4.entry.js → p-496a5b1e.entry.js} +2 -2
  6. package/dist/biggive/p-6ad95202.entry.js +2 -0
  7. package/dist/biggive/p-6ad95202.entry.js.map +1 -0
  8. package/dist/biggive/p-7113e36d.entry.js +2 -0
  9. package/dist/biggive/{p-99783fb6.entry.js → p-8146607d.entry.js} +2 -2
  10. package/dist/biggive/{p-ddccec78.entry.js → p-b4282163.entry.js} +2 -2
  11. package/dist/biggive/{p-51317b2d.entry.js → p-b930ac6d.entry.js} +2 -2
  12. package/dist/biggive/{p-e272f87a.entry.js → p-cc58f607.entry.js} +2 -2
  13. package/dist/biggive/{p-a2c1814d.entry.js → p-fe03b6e6.entry.js} +2 -2
  14. package/dist/cjs/biggive-accordion_40.cjs.entry.js +42 -63
  15. package/dist/cjs/biggive-accordion_40.cjs.entry.js.map +1 -1
  16. package/dist/cjs/biggive-category-icon.cjs.entry.js +1 -1
  17. package/dist/cjs/biggive-cookie-banner.cjs.entry.js +1 -1
  18. package/dist/cjs/biggive-form.cjs.entry.js +1 -1
  19. package/dist/cjs/biggive-icon-group.cjs.entry.js +1 -1
  20. package/dist/cjs/biggive-image-card.cjs.entry.js +2 -2
  21. package/dist/cjs/biggive-nav-group.cjs.entry.js +1 -1
  22. package/dist/cjs/biggive-nav-item.cjs.entry.js +1 -1
  23. package/dist/cjs/biggive-table.cjs.entry.js +2 -2
  24. package/dist/cjs/biggive-video.cjs.entry.js +1 -1
  25. package/dist/cjs/biggive.cjs.js +1 -1
  26. package/dist/cjs/loader.cjs.js +1 -1
  27. package/dist/collection/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.js +10 -71
  28. package/dist/collection/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.js.map +1 -1
  29. package/dist/collection/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.stories.js +0 -14
  30. package/dist/collection/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.stories.js.map +1 -1
  31. package/dist/collection/components/biggive-campaign-card-filter-grid/test/biggive-campaign-card-filter-grid.spec.js +0 -6
  32. package/dist/collection/components/biggive-campaign-card-filter-grid/test/biggive-campaign-card-filter-grid.spec.js.map +1 -1
  33. package/dist/collection/components/biggive-campaign-highlights/biggive-campaign-highlights.js +1 -1
  34. package/dist/collection/components/biggive-category-icon/biggive-category-icon.js +1 -1
  35. package/dist/collection/components/biggive-cookie-banner/biggive-cookie-banner.js +1 -1
  36. package/dist/collection/components/biggive-form/biggive-form.js +1 -1
  37. package/dist/collection/components/biggive-form-field-select/biggive-form-field-select.js +2 -2
  38. package/dist/collection/components/biggive-formatted-text/biggive-formatted-text.js +1 -1
  39. package/dist/collection/components/biggive-generic-icon/biggive-generic-icon.js +1 -1
  40. package/dist/collection/components/biggive-grid/biggive-grid.js +1 -1
  41. package/dist/collection/components/biggive-heading/biggive-heading.js +1 -1
  42. package/dist/collection/components/biggive-hero-image/biggive-hero-image.js +2 -2
  43. package/dist/collection/components/biggive-icon-button/biggive-icon-button.js +2 -2
  44. package/dist/collection/components/biggive-icon-group/biggive-icon-group.js +1 -1
  45. package/dist/collection/components/biggive-image/biggive-image.js +1 -1
  46. package/dist/collection/components/biggive-image-button/biggive-image-button.js +2 -2
  47. package/dist/collection/components/biggive-image-card/biggive-image-card.js +2 -2
  48. package/dist/collection/components/biggive-image-feature/biggive-image-feature.js +1 -1
  49. package/dist/collection/components/biggive-main-menu/biggive-main-menu.js +1 -1
  50. package/dist/collection/components/biggive-misc-icon/biggive-misc-icon.js +1 -1
  51. package/dist/collection/components/biggive-nav-group/biggive-nav-group.js +1 -1
  52. package/dist/collection/components/biggive-nav-item/biggive-nav-item.js +1 -1
  53. package/dist/collection/components/biggive-page-column/biggive-page-column.js +1 -1
  54. package/dist/collection/components/biggive-page-columns/biggive-page-columns.js +1 -1
  55. package/dist/collection/components/biggive-page-section/biggive-page-section.js +2 -2
  56. package/dist/collection/components/biggive-popup/biggive-popup.js +1 -1
  57. package/dist/collection/components/biggive-quote/biggive-quote.js +1 -1
  58. package/dist/collection/components/biggive-sheet/biggive-sheet.js +1 -1
  59. package/dist/collection/components/biggive-social-icon/biggive-social-icon.js +1 -1
  60. package/dist/collection/components/biggive-tab/biggive-tab.js +1 -1
  61. package/dist/collection/components/biggive-tabbed-content/biggive-tabbed-content.js +2 -2
  62. package/dist/collection/components/biggive-table/biggive-table.js +2 -2
  63. package/dist/collection/components/biggive-text-input/biggive-text-input.js +1 -1
  64. package/dist/collection/components/biggive-timeline/biggive-timeline.js +2 -2
  65. package/dist/collection/components/biggive-totalizer/biggive-totalizer.js +1 -1
  66. package/dist/collection/components/biggive-totalizer-ticker-item/biggive-totalizer-ticker-item.js +1 -1
  67. package/dist/collection/components/biggive-video/biggive-video.js +1 -1
  68. package/dist/collection/components/biggive-video-feature/biggive-video-feature.js +1 -1
  69. package/dist/components/biggive-campaign-card-filter-grid.js +8 -31
  70. package/dist/components/biggive-campaign-card-filter-grid.js.map +1 -1
  71. package/dist/components/biggive-campaign-highlights.js +1 -1
  72. package/dist/components/biggive-category-icon.js +1 -1
  73. package/dist/components/biggive-cookie-banner.js +1 -1
  74. package/dist/components/biggive-form-field-select2.js +2 -2
  75. package/dist/components/biggive-form.js +1 -1
  76. package/dist/components/biggive-formatted-text.js +1 -1
  77. package/dist/components/biggive-generic-icon2.js +1 -1
  78. package/dist/components/biggive-grid.js +1 -1
  79. package/dist/components/biggive-heading.js +1 -1
  80. package/dist/components/biggive-hero-image.js +2 -2
  81. package/dist/components/biggive-icon-button.js +2 -2
  82. package/dist/components/biggive-icon-group.js +1 -1
  83. package/dist/components/biggive-image-button.js +2 -2
  84. package/dist/components/biggive-image-card.js +2 -2
  85. package/dist/components/biggive-image-feature.js +1 -1
  86. package/dist/components/biggive-image.js +1 -1
  87. package/dist/components/biggive-main-menu.js +1 -1
  88. package/dist/components/biggive-misc-icon2.js +1 -1
  89. package/dist/components/biggive-nav-group.js +1 -1
  90. package/dist/components/biggive-nav-item.js +1 -1
  91. package/dist/components/biggive-page-column.js +1 -1
  92. package/dist/components/biggive-page-columns.js +1 -1
  93. package/dist/components/biggive-page-section.js +2 -2
  94. package/dist/components/biggive-popup2.js +1 -1
  95. package/dist/components/biggive-quote.js +1 -1
  96. package/dist/components/biggive-sheet.js +1 -1
  97. package/dist/components/biggive-social-icon2.js +1 -1
  98. package/dist/components/biggive-tab.js +1 -1
  99. package/dist/components/biggive-tabbed-content.js +2 -2
  100. package/dist/components/biggive-table.js +2 -2
  101. package/dist/components/biggive-text-input.js +1 -1
  102. package/dist/components/biggive-timeline.js +2 -2
  103. package/dist/components/biggive-totalizer-ticker-item.js +1 -1
  104. package/dist/components/biggive-totalizer.js +1 -1
  105. package/dist/components/biggive-video-feature.js +1 -1
  106. package/dist/components/biggive-video.js +1 -1
  107. package/dist/esm/biggive-accordion_40.entry.js +42 -63
  108. package/dist/esm/biggive-accordion_40.entry.js.map +1 -1
  109. package/dist/esm/biggive-category-icon.entry.js +1 -1
  110. package/dist/esm/biggive-cookie-banner.entry.js +1 -1
  111. package/dist/esm/biggive-form.entry.js +1 -1
  112. package/dist/esm/biggive-icon-group.entry.js +1 -1
  113. package/dist/esm/biggive-image-card.entry.js +2 -2
  114. package/dist/esm/biggive-nav-group.entry.js +1 -1
  115. package/dist/esm/biggive-nav-item.entry.js +1 -1
  116. package/dist/esm/biggive-table.entry.js +2 -2
  117. package/dist/esm/biggive-video.entry.js +1 -1
  118. package/dist/esm/biggive.js +1 -1
  119. package/dist/esm/loader.js +1 -1
  120. package/dist/types/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.d.ts +0 -12
  121. package/dist/types/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.stories.d.ts +0 -10
  122. package/dist/types/components.d.ts +0 -18
  123. package/hydrate/index.js +53 -76
  124. package/package.json +1 -1
  125. package/dist/biggive/p-931fdb53.entry.js +0 -2
  126. package/dist/biggive/p-97ad0d35.entry.js +0 -2
  127. package/dist/biggive/p-e3e48a0a.entry.js +0 -2
  128. package/dist/biggive/p-e3e48a0a.entry.js.map +0 -1
  129. /package/dist/biggive/{p-97ad0d35.entry.js.map → p-03e72a1b.entry.js.map} +0 -0
  130. /package/dist/biggive/{p-2e83d695.entry.js.map → p-09533b1f.entry.js.map} +0 -0
  131. /package/dist/biggive/{p-81c2fba4.entry.js.map → p-496a5b1e.entry.js.map} +0 -0
  132. /package/dist/biggive/{p-931fdb53.entry.js.map → p-7113e36d.entry.js.map} +0 -0
  133. /package/dist/biggive/{p-99783fb6.entry.js.map → p-8146607d.entry.js.map} +0 -0
  134. /package/dist/biggive/{p-ddccec78.entry.js.map → p-b4282163.entry.js.map} +0 -0
  135. /package/dist/biggive/{p-51317b2d.entry.js.map → p-b930ac6d.entry.js.map} +0 -0
  136. /package/dist/biggive/{p-e272f87a.entry.js.map → p-cc58f607.entry.js.map} +0 -0
  137. /package/dist/biggive/{p-a2c1814d.entry.js.map → p-fe03b6e6.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"biggive-campaign-card-filter-grid.js","sourceRoot":"","sources":["../../../src/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Prop, State } from '@stencil/core';\nimport { faMagnifyingGlass } from '@fortawesome/pro-solid-svg-icons';\n\nconst sortOptionLabels = {\n relevance: 'Relevance',\n amountRaised: 'Most raised',\n matchFundsRemaining: 'Match funds remaining',\n} as const;\n\ntype sortOptionKey = keyof typeof sortOptionLabels;\ntype sortOptionLabel = (typeof sortOptionLabels)[sortOptionKey];\n\n@Component({\n tag: 'biggive-campaign-card-filter-grid',\n styleUrl: 'biggive-campaign-card-filter-grid.scss',\n shadow: true,\n})\nexport class BiggiveCampaignCardFilterGrid {\n @Element() el: HTMLBiggiveCampaignCardFilterGridElement;\n\n /**\n * This event `doSearchAndFilterUpdate` event is emitted and propogates to the parent\n * component which handles it\n */\n @Event({\n eventName: 'doSearchAndFilterUpdate',\n bubbles: true,\n cancelable: true,\n composed: true,\n })\n doSearchAndFilterUpdate: EventEmitter<{\n searchText: string | null;\n sortBy: string | null;\n filterCategory: string | null;\n filterBeneficiary: string | null;\n filterLocation: string | null;\n filterFunding: string | null;\n }>;\n\n private sortByPlaceholderText = 'Sort by';\n private beneficiariesPlaceHolderText = 'Select beneficiary';\n private categoriesPlaceHolderText = 'Select category';\n private locationsPlaceHolderText = 'Select location';\n private fundingPlaceHolderText = 'Select funding';\n\n /**\n * Space below component\n */\n @Prop() spaceBelow: number = 0;\n\n /**\n * Intro\n */\n @Prop() intro: string = 'Find a charity or project';\n\n /**\n * Optional search text prop. Useful for pre-populating the search field\n * when the page is loaded with a search term already existing in the URL.\n * This can happen when sharing links, or if a donor goes to a campaign page\n * after searching, and then returns to the search results. In such a case,\n * the search box text will clear, unless we use this prop to populate it on\n * rendering. DON-652.\n */\n @Prop() searchText: string | null = null;\n\n /**\n * Defines the text displayed as the placeholder in the input field\n * before the user types anything\n */\n @Prop() placeholderText: string = 'Search';\n\n /**\n * Defines the text on the search button\n */\n @Prop() buttonText: string = 'Search';\n\n /**\n * JSON array of category key/values, or takes a stringified equiavalent (for Storybook)\n */\n @Prop() categoryOptions: string | Record<string, string> | string[];\n\n /**\n * JSON array of beneficiary key/values, or takes a stringified equiavalent (for Storybook)\n */\n @Prop() beneficiaryOptions: string | Record<string, string> | string[];\n\n /**\n * JSON array of location key/values, or takes a stringified equiavalent (for Storybook)\n */\n @Prop() locationOptions: string | Record<string, string> | string[];\n\n /**\n * JSON array of funding key/values, or takes a stringified equiavalent (for Storybook)\n */\n @Prop() fundingOptions: string | Record<string, string> | string[];\n\n /**\n * This helps us inject a pre-selected dropdown value from outside of this component.\n * This is especially helpful for the Meta campaign and Explore pages, where searching\n * by text wipes out previous sort options and re-uses Relevance, or where one of those\n * two pages is loaded directly with URL parameters - in such a scenario the dropdown\n * shows that it's pre-selected. DON-558.\n */\n @Prop({ mutable: true })\n selectedSortByOption: 'Most raised' | 'Match funds remaining' | 'Relevance';\n\n /**\n * For injecting the chosen category to filter by, as per the comment above for `selectedSortByOption`.\n */\n @Prop({ mutable: true }) selectedFilterCategory: string | null = null;\n\n /**\n * For injecting the chosen beneficiary to filter by, as per the comment above for `selectedSortByOption`.\n */\n @Prop({ mutable: true }) selectedFilterBeneficiary: string | null = null;\n\n /**\n * For injecting the chosen location to filter by, as per the comment above for `selectedSortByOption`.\n */\n @Prop({ mutable: true }) selectedFilterLocation: string | null = null;\n\n /**\n * For injecting the chosen funding to filter by, as per the comment above for `selectedSortByOption`.\n */\n @Prop({ mutable: true }) selectedFilterFunding: string | null = null;\n\n /**\n * State variable - causes re-render on change\n */\n @State() filtersApplied: boolean;\n\n private initialSortByOption: 'Most raised' | 'Match funds remaining' | 'Relevance';\n\n /**\n * This and similar properties represent selections made in the popup but not yet applied.\n */\n private newSelectedFilterCategory: string | null = null;\n private newSelectedFilterBeneficiary: string | null = null;\n private newSelectedFilterLocation: string | null = null;\n private newSelectedFilterFunding: string | null = null;\n\n private categoryFilterSelectionChanged = (value: string) => {\n this.newSelectedFilterCategory = value;\n };\n\n private beneficiarySelectionChanged = (value: string) => {\n this.newSelectedFilterBeneficiary = value;\n };\n\n private locationSelectionChanged = (value: string) => {\n this.newSelectedFilterLocation = value;\n };\n\n private fundingSelectionChanged = (value: string) => {\n this.newSelectedFilterFunding = value;\n };\n\n private sortBySelectionChanged = (value: 'Most raised' | 'Match funds remaining' | 'Relevance') => {\n this.selectedSortByOption = value;\n this.doSearchAndFilterUpdate.emit(this.getSearchAndFilterObject());\n };\n\n private getSearchAndFilterObject() {\n return {\n searchText: this.searchText,\n sortBy: this.selectedSortByOption,\n filterCategory: this.selectedFilterCategory,\n filterBeneficiary: this.selectedFilterBeneficiary,\n filterFunding: this.selectedFilterFunding,\n filterLocation: this.selectedFilterLocation,\n };\n }\n\n private handleApplyFilterButtonClick = () => {\n this.selectedFilterCategory = this.newSelectedFilterCategory ?? this.selectedFilterCategory;\n this.selectedFilterBeneficiary = this.newSelectedFilterBeneficiary ?? this.selectedFilterBeneficiary;\n this.selectedFilterLocation = this.newSelectedFilterLocation ?? this.selectedFilterLocation;\n this.selectedFilterFunding = this.newSelectedFilterFunding ?? this.selectedFilterFunding;\n\n const searchAndFilterObj = this.getSearchAndFilterObject();\n this.doSearchAndFilterUpdate.emit(searchAndFilterObj);\n\n const filterPopup = this.el.shadowRoot?.getElementById('filter-popup') as HTMLBiggivePopupElement | undefined;\n if (filterPopup) {\n filterPopup.closeFromOutside();\n }\n\n this.filtersApplied =\n typeof searchAndFilterObj.filterBeneficiary === 'string' ||\n typeof searchAndFilterObj.filterCategory === 'string' ||\n typeof searchAndFilterObj.filterFunding === 'string' ||\n typeof searchAndFilterObj.filterLocation === 'string';\n };\n\n private removeFilter(filterKey: 'funding' | 'locations' | 'categories' | 'beneficiaries') {\n switch (filterKey) {\n case 'beneficiaries':\n this.selectedFilterBeneficiary = null;\n break;\n case 'categories':\n this.selectedFilterCategory = null;\n break;\n case 'funding':\n this.selectedFilterFunding = null;\n break;\n case 'locations':\n this.selectedFilterLocation = null;\n break;\n default:\n // This asks the compiler to check that we are in dead code, i.e. we covered all the possible filter keys\n // above. If we missed one we would get a compile error trying to assign a string to a never.\n const exhaustiveSwitch: never = filterKey;\n console.error(exhaustiveSwitch);\n }\n\n const selectEl = this.el.shadowRoot?.getElementById(filterKey) as HTMLBiggiveFormFieldSelectElement | undefined;\n if (!selectEl) {\n return;\n }\n\n selectEl.selectedLabel = null;\n selectEl.selectedValue = null;\n this.doSearchAndFilterUpdate.emit(this.getSearchAndFilterObject());\n }\n\n private handleSearchButtonPressed = () => {\n this.doSearchAndFilterUpdate.emit(this.getSearchAndFilterObject());\n\n if (this.hasSearchTerm()) {\n this.selectedSortByOption = 'Relevance';\n }\n };\n\n private handleSearchTextChanged = (event: any) => {\n this.searchText = event.target.value;\n };\n\n private handleEnterPressed = (ev: KeyboardEvent) => {\n if (ev.key === 'Enter') {\n this.doSearchAndFilterUpdate.emit(this.getSearchAndFilterObject());\n }\n };\n\n private handleFilterButtonClick = () => {\n this.newSelectedFilterBeneficiary = this.selectedFilterBeneficiary;\n this.newSelectedFilterCategory = this.selectedFilterCategory;\n this.newSelectedFilterFunding = this.selectedFilterFunding;\n this.newSelectedFilterLocation = this.selectedFilterLocation;\n\n const filterPopup = this.el.shadowRoot?.getElementById('filter-popup') as HTMLBiggivePopupElement | undefined;\n if (filterPopup) {\n filterPopup.openFromOutside();\n }\n };\n\n private handleClearAll = () => {\n // Set the 'Filters' button back to the primary background colour\n this.filtersApplied = false;\n\n // Clear all\n this.searchText = null;\n this.selectedSortByOption = this.initialSortByOption;\n this.selectedFilterBeneficiary = null;\n this.selectedFilterCategory = null;\n this.selectedFilterFunding = null;\n this.selectedFilterLocation = null;\n\n // Clear <biggive-form-field-select> components' internal selectedValue and selectedLabel. DON-654.\n ['sort-by', 'categories', 'beneficiaries', 'locations', 'funding'].forEach(id => {\n const theEl = this.el.shadowRoot?.getElementById(id) as HTMLBiggiveFormFieldSelectElement | undefined;\n if (!theEl) {\n return;\n }\n\n theEl.selectedValue = null;\n theEl.selectedLabel = null;\n });\n\n const selectedFilters = this.el.shadowRoot?.querySelector('.selected-filters');\n if (selectedFilters) {\n selectedFilters.querySelectorAll('.button').forEach(button => {\n button.remove();\n });\n }\n\n // Emit the doSearchAndFilterUpdate event with null values. DON-654\n this.doSearchAndFilterUpdate.emit({\n searchText: null,\n sortBy: null,\n filterCategory: null,\n filterBeneficiary: null,\n filterFunding: null,\n filterLocation: null,\n });\n };\n\n componentWillRender() {\n this.filtersApplied =\n this.selectedFilterCategory !== null || this.selectedFilterBeneficiary !== null || this.selectedFilterFunding !== null || this.selectedFilterLocation !== null;\n this.initialSortByOption = this.selectedSortByOption;\n }\n\n render() {\n const sortOptions = this.getSortOptions();\n\n return (\n <div class={'container space-below-' + this.spaceBelow}>\n <div class=\"sleeve\">\n <div class=\"search-wrap\">\n <h4>{this.intro}</h4>\n <div class=\"field-wrap\">\n <div class=\"input-wrap\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon\" viewBox=\"0 0 512 512\">\n <path d={faMagnifyingGlass.icon[4].toString()} />\n </svg>\n <input\n type=\"text\"\n value={this.searchText ?? ''}\n class=\"input-text\"\n placeholder={this.placeholderText}\n onInput={this.handleSearchTextChanged}\n onKeyDown={this.handleEnterPressed}\n />\n </div>\n <biggive-button onClick={this.handleSearchButtonPressed} label={this.buttonText} />\n </div>\n </div>\n <div class=\"sort-filter-wrap\">\n <div class=\"filter-wrap\">\n <biggive-button class=\"filter\" colourScheme=\"primary\" onClick={this.handleFilterButtonClick} label=\"Filter\" fullWidth={true} space-below=\"0\"></biggive-button>\n <biggive-popup id=\"filter-popup\">\n <h4 class=\"space-above-0 space-below-3 text-colour-primary\">Filters</h4>\n <div class=\"select-wrapper-1\">\n <biggive-form-field-select\n backgroundColour=\"white\"\n prompt=\"Category\"\n placeholder={this.categoriesPlaceHolderText}\n selectedLabel={this.selectedFilterCategory}\n selectedValue={this.selectedFilterCategory}\n options={this.optionsToArray(this.categoryOptions || [])}\n selectionChanged={this.categoryFilterSelectionChanged}\n id=\"categories\"\n space-below=\"2\"\n ></biggive-form-field-select>\n </div>\n\n <div class=\"select-wrapper-2\">\n <biggive-form-field-select\n backgroundColour=\"white\"\n prompt=\"Beneficiary\"\n placeholder={this.beneficiariesPlaceHolderText}\n selectedLabel={this.selectedFilterBeneficiary}\n selectedValue={this.selectedFilterBeneficiary}\n options={this.optionsToArray(this.beneficiaryOptions || [])}\n selectionChanged={this.beneficiarySelectionChanged}\n id=\"beneficiaries\"\n space-below=\"2\"\n ></biggive-form-field-select>\n </div>\n\n <div class=\"select-wrapper-3\">\n <biggive-form-field-select\n backgroundColour=\"white\"\n prompt=\"Location\"\n placeholder={this.locationsPlaceHolderText}\n selectedLabel={this.selectedFilterLocation}\n selectedValue={this.selectedFilterLocation}\n options={this.optionsToArray(this.locationOptions || [])}\n selectionChanged={this.locationSelectionChanged}\n id=\"locations\"\n space-below=\"2\"\n ></biggive-form-field-select>\n </div>\n\n <div class=\"select-wrapper-4\">\n <biggive-form-field-select\n backgroundColour=\"white\"\n prompt=\"Funding\"\n placeholder={this.fundingPlaceHolderText}\n selectedLabel={this.selectedFilterFunding}\n selectedValue={this.selectedFilterFunding}\n options={this.optionsToArray(this.fundingOptions || [])}\n selectionChanged={this.fundingSelectionChanged}\n id=\"funding\"\n space-below=\"2\"\n ></biggive-form-field-select>\n </div>\n <div class=\"align-right\">\n <biggive-button label=\"Apply filters\" onClick={this.handleApplyFilterButtonClick} />\n </div>\n </biggive-popup>\n </div>\n\n <div class=\"sort-wrap\">\n <biggive-form-field-select\n options={sortOptions}\n prompt={null}\n select-style=\"underlined\"\n placeholder={this.sortByPlaceholderText}\n selectedLabel={this.selectedSortByOption}\n selectedValue={this.getSelectedValue()}\n selectionChanged={this.sortBySelectionChanged}\n id=\"sort-by\"\n >\n <biggive-form-field-select-option value=\"amountRaised\" label=\"Most raised\"></biggive-form-field-select-option>\n <biggive-form-field-select-option value=\"matchFundsRemaining\" label=\"Match funds remaining\"></biggive-form-field-select-option>\n {(this.searchText || '').length > 0 ? <biggive-form-field-select-option value=\"Relevance\" label=\"Relevance\"></biggive-form-field-select-option> : null}\n </biggive-form-field-select>\n </div>\n </div>\n <div class=\"selected-filter-wrap\">\n <div class=\"selected-filters\">\n {this.selectedFilterCategory && (\n <span\n class=\"button\"\n onClick={() => {\n this.removeFilter('categories');\n }}\n >\n {this.selectedFilterCategory}\n </span>\n )}\n {this.selectedFilterBeneficiary && (\n <span\n class=\"button\"\n onClick={() => {\n this.removeFilter('beneficiaries');\n }}\n >\n {this.selectedFilterBeneficiary}\n </span>\n )}\n {this.selectedFilterLocation && (\n <span\n class=\"button\"\n onClick={() => {\n this.removeFilter('locations');\n }}\n >\n {this.selectedFilterLocation}\n </span>\n )}\n {this.selectedFilterFunding && (\n <span\n class=\"button\"\n onClick={() => {\n this.removeFilter('funding');\n }}\n >\n {this.selectedFilterFunding}\n </span>\n )}\n </div>\n <div class=\"clear-all\">\n <a onClick={this.handleClearAll}>Clear all</a>\n </div>\n </div>\n <div class=\"campaign-grid\">\n <slot name=\"campaign-grid\"></slot>\n </div>\n </div>\n </div>\n );\n }\n\n // I'm not sure if I understand the reasoning for own-methods-must-be-private. I made the method below public to unit\n // test it. Maybe the idea is that we should move anything with enough logic to test outside the component class? I\n // can do that if people think it's better.\n //\n // eslint-disable-next-line @stencil-community/own-methods-must-be-private\n public getSelectedValue(): undefined | string {\n const sortByOption = this.selectedSortByOption;\n if (sortByOption === undefined) {\n return undefined;\n }\n const sortOptions = this.getSortOptions();\n const selected = sortOptions.filter(option => {\n return option.label.toLowerCase() === sortByOption.toLowerCase();\n })[0];\n\n return selected?.value;\n }\n\n private getSortOptions(): {\n label: sortOptionLabel;\n value: sortOptionKey;\n }[] {\n // @ts-ignore - see https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208\n const sortOptionKeys: sortOptionKey[] = Object.getOwnPropertyNames(sortOptionLabels);\n const relevantOptionKeys = sortOptionKeys.filter(key => key !== 'relevance' || this.hasSearchTerm());\n\n return relevantOptionKeys.map((key: sortOptionKey) => ({ value: key, label: sortOptionLabels[key] }));\n }\n\n private hasSearchTerm() {\n return typeof this.searchText === 'string' && this.searchText.length > 0;\n }\n\n private optionsToArray(options: string | Record<string, string> | string[]): {\n label: string;\n value: string;\n }[] {\n if (typeof options === 'string') {\n options = JSON.parse(options);\n }\n if (Array.isArray(options)) {\n return options.map((option: string) => ({ value: option, label: option }));\n }\n\n return Object.entries(options).map(entry => ({ value: entry[0], label: entry[1] }));\n }\n}\n"]}
1
+ {"version":3,"file":"biggive-campaign-card-filter-grid.js","sourceRoot":"","sources":["../../../src/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Prop, State } from '@stencil/core';\nimport { faMagnifyingGlass } from '@fortawesome/pro-solid-svg-icons';\n\nconst sortOptionLabels = {\n relevance: 'Relevance',\n amountRaised: 'Most raised',\n matchFundsRemaining: 'Match funds remaining',\n} as const;\n\ntype sortOptionKey = keyof typeof sortOptionLabels;\ntype sortOptionLabel = (typeof sortOptionLabels)[sortOptionKey];\n\n@Component({\n tag: 'biggive-campaign-card-filter-grid',\n styleUrl: 'biggive-campaign-card-filter-grid.scss',\n shadow: true,\n})\nexport class BiggiveCampaignCardFilterGrid {\n @Element() el: HTMLBiggiveCampaignCardFilterGridElement;\n\n /**\n * This event `doSearchAndFilterUpdate` event is emitted and propogates to the parent\n * component which handles it\n */\n @Event({\n eventName: 'doSearchAndFilterUpdate',\n bubbles: true,\n cancelable: true,\n composed: true,\n })\n doSearchAndFilterUpdate: EventEmitter<{\n searchText: string | null;\n sortBy: string | null;\n filterCategory: string | null;\n filterBeneficiary: string | null;\n filterLocation: string | null;\n }>;\n\n private sortByPlaceholderText = 'Sort by';\n private beneficiariesPlaceHolderText = 'Select beneficiary';\n private categoriesPlaceHolderText = 'Select category';\n private locationsPlaceHolderText = 'Select location';\n\n /**\n * Space below component\n */\n @Prop() spaceBelow: number = 0;\n\n /**\n * Intro\n */\n @Prop() intro: string = 'Find a charity or project';\n\n /**\n * Optional search text prop. Useful for pre-populating the search field\n * when the page is loaded with a search term already existing in the URL.\n * This can happen when sharing links, or if a donor goes to a campaign page\n * after searching, and then returns to the search results. In such a case,\n * the search box text will clear, unless we use this prop to populate it on\n * rendering. DON-652.\n */\n @Prop() searchText: string | null = null;\n\n /**\n * Defines the text displayed as the placeholder in the input field\n * before the user types anything\n */\n @Prop() placeholderText: string = 'Search';\n\n /**\n * Defines the text on the search button\n */\n @Prop() buttonText: string = 'Search';\n\n /**\n * JSON array of category key/values, or takes a stringified equiavalent (for Storybook)\n */\n @Prop() categoryOptions: string | Record<string, string> | string[];\n\n /**\n * JSON array of beneficiary key/values, or takes a stringified equiavalent (for Storybook)\n */\n @Prop() beneficiaryOptions: string | Record<string, string> | string[];\n\n /**\n * JSON array of location key/values, or takes a stringified equiavalent (for Storybook)\n */\n @Prop() locationOptions: string | Record<string, string> | string[];\n\n /**\n * This helps us inject a pre-selected dropdown value from outside of this component.\n * This is especially helpful for the Meta campaign and Explore pages, where searching\n * by text wipes out previous sort options and re-uses Relevance, or where one of those\n * two pages is loaded directly with URL parameters - in such a scenario the dropdown\n * shows that it's pre-selected. DON-558.\n */\n @Prop({ mutable: true })\n selectedSortByOption: 'Most raised' | 'Match funds remaining' | 'Relevance';\n\n /**\n * For injecting the chosen category to filter by, as per the comment above for `selectedSortByOption`.\n */\n @Prop({ mutable: true }) selectedFilterCategory: string | null = null;\n\n /**\n * For injecting the chosen beneficiary to filter by, as per the comment above for `selectedSortByOption`.\n */\n @Prop({ mutable: true }) selectedFilterBeneficiary: string | null = null;\n\n /**\n * For injecting the chosen location to filter by, as per the comment above for `selectedSortByOption`.\n */\n @Prop({ mutable: true }) selectedFilterLocation: string | null = null;\n\n /**\n * State variable - causes re-render on change\n */\n @State() filtersApplied: boolean;\n\n private initialSortByOption: 'Most raised' | 'Match funds remaining' | 'Relevance';\n\n /**\n * This and similar properties represent selections made in the popup but not yet applied.\n */\n private newSelectedFilterCategory: string | null = null;\n private newSelectedFilterBeneficiary: string | null = null;\n private newSelectedFilterLocation: string | null = null;\n\n private categoryFilterSelectionChanged = (value: string) => {\n this.newSelectedFilterCategory = value;\n };\n\n private beneficiarySelectionChanged = (value: string) => {\n this.newSelectedFilterBeneficiary = value;\n };\n\n private locationSelectionChanged = (value: string) => {\n this.newSelectedFilterLocation = value;\n };\n\n private sortBySelectionChanged = (value: 'Most raised' | 'Match funds remaining' | 'Relevance') => {\n this.selectedSortByOption = value;\n this.doSearchAndFilterUpdate.emit(this.getSearchAndFilterObject());\n };\n\n private getSearchAndFilterObject() {\n return {\n searchText: this.searchText,\n sortBy: this.selectedSortByOption,\n filterCategory: this.selectedFilterCategory,\n filterBeneficiary: this.selectedFilterBeneficiary,\n filterLocation: this.selectedFilterLocation,\n };\n }\n\n private handleApplyFilterButtonClick = () => {\n this.selectedFilterCategory = this.newSelectedFilterCategory ?? this.selectedFilterCategory;\n this.selectedFilterBeneficiary = this.newSelectedFilterBeneficiary ?? this.selectedFilterBeneficiary;\n this.selectedFilterLocation = this.newSelectedFilterLocation ?? this.selectedFilterLocation;\n\n const searchAndFilterObj = this.getSearchAndFilterObject();\n this.doSearchAndFilterUpdate.emit(searchAndFilterObj);\n\n const filterPopup = this.el.shadowRoot?.getElementById('filter-popup') as HTMLBiggivePopupElement | undefined;\n if (filterPopup) {\n filterPopup.closeFromOutside();\n }\n\n this.filtersApplied =\n typeof searchAndFilterObj.filterBeneficiary === 'string' || typeof searchAndFilterObj.filterCategory === 'string' || typeof searchAndFilterObj.filterLocation === 'string';\n };\n\n private removeFilter(filterKey: 'locations' | 'categories' | 'beneficiaries') {\n switch (filterKey) {\n case 'beneficiaries':\n this.selectedFilterBeneficiary = null;\n break;\n case 'categories':\n this.selectedFilterCategory = null;\n break;\n case 'locations':\n this.selectedFilterLocation = null;\n break;\n default:\n // This asks the compiler to check that we are in dead code, i.e. we covered all the possible filter keys\n // above. If we missed one we would get a compile error trying to assign a string to a never.\n const exhaustiveSwitch: never = filterKey;\n console.error(exhaustiveSwitch);\n }\n\n const selectEl = this.el.shadowRoot?.getElementById(filterKey) as HTMLBiggiveFormFieldSelectElement | undefined;\n if (!selectEl) {\n return;\n }\n\n selectEl.selectedLabel = null;\n selectEl.selectedValue = null;\n this.doSearchAndFilterUpdate.emit(this.getSearchAndFilterObject());\n }\n\n private handleSearchButtonPressed = () => {\n this.doSearchAndFilterUpdate.emit(this.getSearchAndFilterObject());\n\n if (this.hasSearchTerm()) {\n this.selectedSortByOption = 'Relevance';\n }\n };\n\n private handleSearchTextChanged = (event: any) => {\n this.searchText = event.target.value;\n };\n\n private handleEnterPressed = (ev: KeyboardEvent) => {\n if (ev.key === 'Enter') {\n this.doSearchAndFilterUpdate.emit(this.getSearchAndFilterObject());\n }\n };\n\n private handleFilterButtonClick = () => {\n this.newSelectedFilterBeneficiary = this.selectedFilterBeneficiary;\n this.newSelectedFilterCategory = this.selectedFilterCategory;\n this.newSelectedFilterLocation = this.selectedFilterLocation;\n\n const filterPopup = this.el.shadowRoot?.getElementById('filter-popup') as HTMLBiggivePopupElement | undefined;\n if (filterPopup) {\n filterPopup.openFromOutside();\n }\n };\n\n private handleClearAll = () => {\n // Set the 'Filters' button back to the primary background colour\n this.filtersApplied = false;\n\n // Clear all\n this.searchText = null;\n this.selectedSortByOption = this.initialSortByOption;\n this.selectedFilterBeneficiary = null;\n this.selectedFilterCategory = null;\n this.selectedFilterLocation = null;\n\n // Clear <biggive-form-field-select> components' internal selectedValue and selectedLabel. DON-654.\n ['sort-by', 'categories', 'beneficiaries', 'locations', 'funding'].forEach(id => {\n const theEl = this.el.shadowRoot?.getElementById(id) as HTMLBiggiveFormFieldSelectElement | undefined;\n if (!theEl) {\n return;\n }\n\n theEl.selectedValue = null;\n theEl.selectedLabel = null;\n });\n\n const selectedFilters = this.el.shadowRoot?.querySelector('.selected-filters');\n if (selectedFilters) {\n selectedFilters.querySelectorAll('.button').forEach(button => {\n button.remove();\n });\n }\n\n // Emit the doSearchAndFilterUpdate event with null values. DON-654\n this.doSearchAndFilterUpdate.emit({\n searchText: null,\n sortBy: null,\n filterCategory: null,\n filterBeneficiary: null,\n filterLocation: null,\n });\n };\n\n componentWillRender() {\n this.filtersApplied = this.selectedFilterCategory !== null || this.selectedFilterBeneficiary !== null || this.selectedFilterLocation !== null;\n this.initialSortByOption = this.selectedSortByOption;\n }\n\n render() {\n const sortOptions = this.getSortOptions();\n\n return (\n <div class={'container space-below-' + this.spaceBelow}>\n <div class=\"sleeve\">\n <div class=\"search-wrap\">\n <h4>{this.intro}</h4>\n <div class=\"field-wrap\">\n <div class=\"input-wrap\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"icon\" viewBox=\"0 0 512 512\">\n <path d={faMagnifyingGlass.icon[4].toString()} />\n </svg>\n <input\n type=\"text\"\n value={this.searchText ?? ''}\n class=\"input-text\"\n placeholder={this.placeholderText}\n onInput={this.handleSearchTextChanged}\n onKeyDown={this.handleEnterPressed}\n />\n </div>\n <biggive-button onClick={this.handleSearchButtonPressed} label={this.buttonText} />\n </div>\n </div>\n <div class=\"sort-filter-wrap\">\n <div class=\"filter-wrap\">\n <biggive-button class=\"filter\" colourScheme=\"primary\" onClick={this.handleFilterButtonClick} label=\"Filter\" fullWidth={true} space-below=\"0\"></biggive-button>\n <biggive-popup id=\"filter-popup\">\n <h4 class=\"space-above-0 space-below-3 text-colour-primary\">Filters</h4>\n <div class=\"select-wrapper-1\">\n <biggive-form-field-select\n backgroundColour=\"white\"\n prompt=\"Category\"\n placeholder={this.categoriesPlaceHolderText}\n selectedLabel={this.selectedFilterCategory}\n selectedValue={this.selectedFilterCategory}\n options={this.optionsToArray(this.categoryOptions || [])}\n selectionChanged={this.categoryFilterSelectionChanged}\n id=\"categories\"\n space-below=\"2\"\n ></biggive-form-field-select>\n </div>\n\n <div class=\"select-wrapper-2\">\n <biggive-form-field-select\n backgroundColour=\"white\"\n prompt=\"Beneficiary\"\n placeholder={this.beneficiariesPlaceHolderText}\n selectedLabel={this.selectedFilterBeneficiary}\n selectedValue={this.selectedFilterBeneficiary}\n options={this.optionsToArray(this.beneficiaryOptions || [])}\n selectionChanged={this.beneficiarySelectionChanged}\n id=\"beneficiaries\"\n space-below=\"2\"\n ></biggive-form-field-select>\n </div>\n\n <div class=\"select-wrapper-3\">\n <biggive-form-field-select\n backgroundColour=\"white\"\n prompt=\"Location\"\n placeholder={this.locationsPlaceHolderText}\n selectedLabel={this.selectedFilterLocation}\n selectedValue={this.selectedFilterLocation}\n options={this.optionsToArray(this.locationOptions || [])}\n selectionChanged={this.locationSelectionChanged}\n id=\"locations\"\n space-below=\"2\"\n ></biggive-form-field-select>\n </div>\n\n <div class=\"align-right\">\n <biggive-button label=\"Apply filters\" onClick={this.handleApplyFilterButtonClick} />\n </div>\n </biggive-popup>\n </div>\n\n <div class=\"sort-wrap\">\n <biggive-form-field-select\n options={sortOptions}\n prompt={null}\n select-style=\"underlined\"\n placeholder={this.sortByPlaceholderText}\n selectedLabel={this.selectedSortByOption}\n selectedValue={this.getSelectedValue()}\n selectionChanged={this.sortBySelectionChanged}\n id=\"sort-by\"\n >\n <biggive-form-field-select-option value=\"amountRaised\" label=\"Most raised\"></biggive-form-field-select-option>\n <biggive-form-field-select-option value=\"matchFundsRemaining\" label=\"Match funds remaining\"></biggive-form-field-select-option>\n {(this.searchText || '').length > 0 ? <biggive-form-field-select-option value=\"Relevance\" label=\"Relevance\"></biggive-form-field-select-option> : null}\n </biggive-form-field-select>\n </div>\n </div>\n <div class=\"selected-filter-wrap\">\n <div class=\"selected-filters\">\n {this.selectedFilterCategory && (\n <span\n class=\"button\"\n onClick={() => {\n this.removeFilter('categories');\n }}\n >\n {this.selectedFilterCategory}\n </span>\n )}\n {this.selectedFilterBeneficiary && (\n <span\n class=\"button\"\n onClick={() => {\n this.removeFilter('beneficiaries');\n }}\n >\n {this.selectedFilterBeneficiary}\n </span>\n )}\n {this.selectedFilterLocation && (\n <span\n class=\"button\"\n onClick={() => {\n this.removeFilter('locations');\n }}\n >\n {this.selectedFilterLocation}\n </span>\n )}\n </div>\n <div class=\"clear-all\">\n <a onClick={this.handleClearAll}>Clear all</a>\n </div>\n </div>\n <div class=\"campaign-grid\">\n <slot name=\"campaign-grid\"></slot>\n </div>\n </div>\n </div>\n );\n }\n\n // I'm not sure if I understand the reasoning for own-methods-must-be-private. I made the method below public to unit\n // test it. Maybe the idea is that we should move anything with enough logic to test outside the component class? I\n // can do that if people think it's better.\n //\n // eslint-disable-next-line @stencil-community/own-methods-must-be-private\n public getSelectedValue(): undefined | string {\n const sortByOption = this.selectedSortByOption;\n if (sortByOption === undefined) {\n return undefined;\n }\n const sortOptions = this.getSortOptions();\n const selected = sortOptions.filter(option => {\n return option.label.toLowerCase() === sortByOption.toLowerCase();\n })[0];\n\n return selected?.value;\n }\n\n private getSortOptions(): {\n label: sortOptionLabel;\n value: sortOptionKey;\n }[] {\n // @ts-ignore - see https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208\n const sortOptionKeys: sortOptionKey[] = Object.getOwnPropertyNames(sortOptionLabels);\n const relevantOptionKeys = sortOptionKeys.filter(key => key !== 'relevance' || this.hasSearchTerm());\n\n return relevantOptionKeys.map((key: sortOptionKey) => ({ value: key, label: sortOptionLabels[key] }));\n }\n\n private hasSearchTerm() {\n return typeof this.searchText === 'string' && this.searchText.length > 0;\n }\n\n private optionsToArray(options: string | Record<string, string> | string[]): {\n label: string;\n value: string;\n }[] {\n if (typeof options === 'string') {\n options = JSON.parse(options);\n }\n if (Array.isArray(options)) {\n return options.map((option: string) => ({ value: option, label: option }));\n }\n\n return Object.entries(options).map(entry => ({ value: entry[0], label: entry[1] }));\n }\n}\n"]}
@@ -10,9 +10,6 @@ export default {
10
10
  locationOptions: {
11
11
  name: 'Location Options',
12
12
  },
13
- fundingOptions: {
14
- name: 'Funding Options',
15
- },
16
13
  searchText: {
17
14
  name: 'Search Text',
18
15
  },
@@ -44,13 +41,6 @@ export default {
44
41
  type: 'select',
45
42
  },
46
43
  },
47
- selectedFilterFunding: {
48
- name: 'Selected Filter Funding',
49
- options: ['Match funded'],
50
- control: {
51
- type: 'select',
52
- },
53
- },
54
44
  },
55
45
  };
56
46
  const Template = (args) => `
@@ -58,14 +48,12 @@ const Template = (args) => `
58
48
  category-options='${args.categoryOptions}'
59
49
  beneficiary-options='${args.beneficiaryOptions}'
60
50
  location-options='${args.locationOptions}'
61
- funding-options='${args.fundingOptions}'
62
51
  search-text="${args.searchText}"
63
52
  filters-applied="${args.filtersApplied}",
64
53
  ${args.selectedSortByOption ? 'selected-sort-by-option=' + args.selectedSortByOption : ''}
65
54
  ${args.selectedFilterCategory ? 'selected-filter-category=' + args.selectedFilterCategory : ''}
66
55
  ${args.selectedFilterBeneficiary ? 'selected-filter-beneficiary=' + args.selectedFilterBeneficiary : ''}
67
56
  ${args.selectedFilterLocation ? 'selected-filter-location=' + args.selectedFilterLocation : ''}
68
- ${args.selectedFilterFunding ? 'selected-filter-funding=' + args.selectedFilterFunding : ''}
69
57
  >
70
58
  <biggive-grid slot="campaign-grid" column-count="3">
71
59
  <biggive-campaign-card
@@ -112,12 +100,10 @@ CampaignCardFilterGridComponent.args = {
112
100
  categoryOptions: JSON.stringify(['ABC', 'DEF']),
113
101
  beneficiaryOptions: JSON.stringify(['ABC', 'DEF']),
114
102
  locationOptions: JSON.stringify(['ABC', 'DEF']),
115
- fundingOptions: JSON.stringify(['ABC', 'DEF']),
116
103
  searchText: '',
117
104
  selectedSortByOption: null,
118
105
  selectedFilterCategory: null,
119
106
  selectedFilterBeneficiary: null,
120
107
  selectedFilterLocation: null,
121
- selectedFilterFunding: null,
122
108
  };
123
109
  //# sourceMappingURL=biggive-campaign-card-filter-grid.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"biggive-campaign-card-filter-grid.stories.js","sourceRoot":"","sources":["../../../src/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["export default {\n title: 'Components/Campaign Features',\n argTypes: {\n categoryOptions: {\n name: 'Category Options',\n },\n beneficiaryOptions: {\n name: 'Beneficiary Options',\n },\n locationOptions: {\n name: 'Location Options',\n },\n fundingOptions: {\n name: 'Funding Options',\n },\n searchText: {\n name: 'Search Text',\n },\n selectedSortByOption: {\n name: 'Selected Sort By Option',\n options: ['Match funds remaining', 'Most raised', 'Relevance'],\n control: {\n type: 'select',\n },\n },\n selectedFilterCategory: {\n name: 'Selected Filter Category',\n options: ['Health', 'Disaster Relief', 'Cancer'],\n control: {\n type: 'select',\n },\n },\n selectedFilterBeneficiary: {\n name: 'Selected Filter Beneficiary',\n options: ['General Public', 'Animals', 'Veterans'],\n control: {\n type: 'select',\n },\n },\n selectedFilterLocation: {\n name: 'Selected Filter Location',\n options: ['United Kingdom', 'Spain', 'France'],\n control: {\n type: 'select',\n },\n },\n selectedFilterFunding: {\n name: 'Selected Filter Funding',\n options: ['Match funded'],\n control: {\n type: 'select',\n },\n },\n },\n};\n\nconst Template = (args: any) => `\n <biggive-campaign-card-filter-grid\n category-options='${args.categoryOptions}'\n beneficiary-options='${args.beneficiaryOptions}'\n location-options='${args.locationOptions}'\n funding-options='${args.fundingOptions}'\n search-text=\"${args.searchText}\"\n filters-applied=\"${args.filtersApplied}\",\n ${args.selectedSortByOption ? 'selected-sort-by-option=' + args.selectedSortByOption : ''}\n ${args.selectedFilterCategory ? 'selected-filter-category=' + args.selectedFilterCategory : ''}\n ${args.selectedFilterBeneficiary ? 'selected-filter-beneficiary=' + args.selectedFilterBeneficiary : ''}\n ${args.selectedFilterLocation ? 'selected-filter-location=' + args.selectedFilterLocation : ''}\n ${args.selectedFilterFunding ? 'selected-filter-funding=' + args.selectedFilterFunding : ''}\n >\n <biggive-grid slot=\"campaign-grid\" column-count=\"3\">\n <biggive-campaign-card\n campaign-type=\"Match Funded\"\n campaign-title=\"Oxford Piano Festival Fundraising Campaign for LGBTQ+ community\"\n organisation-name=\"Oxford Philharmonic Orchestra\"\n currency-code=\"GBP\"\n primary-figure-label=\"Total Raised\"\n primary-figure-amount=\"76543\"\n secondary-figure-label=\"Total Raised\"\n secondary-figure-amount=\"76543\"\n progress-bar-counter=\"75\">\n </biggive-campaign-card>\n <biggive-campaign-card\n data-filter-categories=\"[&quot;Healthcare&quot;]\"\n data-filter-beneficiaries=\"[&quot;Children&quot;]\"\n campaign-type=\"Match Funded\"\n campaign-title=\"Oxford Piano Festival Fundraising Campaign for LGBTQ+ community\"\n organisation-name=\"Oxford Philharmonic Orchestra\"\n currency-code=\"GBP\"\n primary-figure-label=\"Total Raised\"\n primary-figure-amount=\"76543\"\n secondary-figure-label=\"Total Raised\"\n secondary-figure-amount=\"76543\">\n </biggive-campaign-card>\n <biggive-campaign-card\n data-filter-categories=\"[&quot;Healthcare&quot;]\"\n data-filter-beneficiaries=\"[&quot;Children&quot;]\"\n campaign-type=\"Match Funded\"\n campaign-title=\"Oxford Piano Festival Fundraising Campaign for LGBTQ+ community\"\n organisation-name=\"Oxford Philharmonic Orchestra\"\n currency-code=\"GBP\"\n primary-figure-label=\"Total Raised\"\n primary-figure-amount=\"76543\"\n secondary-figure-label=\"Total Raised\"\n secondary-figure-amount=\"76543\">\n </biggive-campaign-card>\n </biggive-grid>\n </biggive-campaign-card-filter-grid>\n `;\n\ndocument.addEventListener('doSearchAndFilterUpdate', ($event: CustomEvent) => console.log($event.detail));\n\nexport const CampaignCardFilterGridComponent = Template.bind({});\nCampaignCardFilterGridComponent.args = {\n categoryOptions: JSON.stringify(['ABC', 'DEF']),\n beneficiaryOptions: JSON.stringify(['ABC', 'DEF']),\n locationOptions: JSON.stringify(['ABC', 'DEF']),\n fundingOptions: JSON.stringify(['ABC', 'DEF']),\n searchText: '',\n selectedSortByOption: null,\n selectedFilterCategory: null,\n selectedFilterBeneficiary: null,\n selectedFilterLocation: null,\n selectedFilterFunding: null,\n};\n"]}
1
+ {"version":3,"file":"biggive-campaign-card-filter-grid.stories.js","sourceRoot":"","sources":["../../../src/components/biggive-campaign-card-filter-grid/biggive-campaign-card-filter-grid.stories.tsx"],"names":[],"mappings":"AAAA,eAAe;IACb,KAAK,EAAE,8BAA8B;IACrC,QAAQ,EAAE;QACR,eAAe,EAAE;YACf,IAAI,EAAE,kBAAkB;SACzB;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,qBAAqB;SAC5B;QACD,eAAe,EAAE;YACf,IAAI,EAAE,kBAAkB;SACzB;QACD,UAAU,EAAE;YACV,IAAI,EAAE,aAAa;SACpB;QACD,oBAAoB,EAAE;YACpB,IAAI,EAAE,yBAAyB;YAC/B,OAAO,EAAE,CAAC,uBAAuB,EAAE,aAAa,EAAE,WAAW,CAAC;YAC9D,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;aACf;SACF;QACD,sBAAsB,EAAE;YACtB,IAAI,EAAE,0BAA0B;YAChC,OAAO,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,CAAC;YAChD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;aACf;SACF;QACD,yBAAyB,EAAE;YACzB,IAAI,EAAE,6BAA6B;YACnC,OAAO,EAAE,CAAC,gBAAgB,EAAE,SAAS,EAAE,UAAU,CAAC;YAClD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;aACf;SACF;QACD,sBAAsB,EAAE;YACtB,IAAI,EAAE,0BAA0B;YAChC,OAAO,EAAE,CAAC,gBAAgB,EAAE,OAAO,EAAE,QAAQ,CAAC;YAC9C,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;aACf;SACF;KACF;CACF,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAAS,EAAE,EAAE,CAAC;;4BAEJ,IAAI,CAAC,eAAe;+BACjB,IAAI,CAAC,kBAAkB;4BAC1B,IAAI,CAAC,eAAe;uBACzB,IAAI,CAAC,UAAU;2BACX,IAAI,CAAC,cAAc;UACpC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,0BAA0B,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE;UACvF,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,2BAA2B,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE;UAC5F,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,8BAA8B,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE;UACrG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,2BAA2B,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwC/F,CAAC;AAER,QAAQ,CAAC,gBAAgB,CAAC,yBAAyB,EAAE,CAAC,MAAmB,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAE1G,MAAM,CAAC,MAAM,+BAA+B,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACjE,+BAA+B,CAAC,IAAI,GAAG;IACrC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/C,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAClD,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/C,UAAU,EAAE,EAAE;IACd,oBAAoB,EAAE,IAAI;IAC1B,sBAAsB,EAAE,IAAI;IAC5B,yBAAyB,EAAE,IAAI;IAC/B,sBAAsB,EAAE,IAAI;CAC7B,CAAC","sourcesContent":["export default {\n title: 'Components/Campaign Features',\n argTypes: {\n categoryOptions: {\n name: 'Category Options',\n },\n beneficiaryOptions: {\n name: 'Beneficiary Options',\n },\n locationOptions: {\n name: 'Location Options',\n },\n searchText: {\n name: 'Search Text',\n },\n selectedSortByOption: {\n name: 'Selected Sort By Option',\n options: ['Match funds remaining', 'Most raised', 'Relevance'],\n control: {\n type: 'select',\n },\n },\n selectedFilterCategory: {\n name: 'Selected Filter Category',\n options: ['Health', 'Disaster Relief', 'Cancer'],\n control: {\n type: 'select',\n },\n },\n selectedFilterBeneficiary: {\n name: 'Selected Filter Beneficiary',\n options: ['General Public', 'Animals', 'Veterans'],\n control: {\n type: 'select',\n },\n },\n selectedFilterLocation: {\n name: 'Selected Filter Location',\n options: ['United Kingdom', 'Spain', 'France'],\n control: {\n type: 'select',\n },\n },\n },\n};\n\nconst Template = (args: any) => `\n <biggive-campaign-card-filter-grid\n category-options='${args.categoryOptions}'\n beneficiary-options='${args.beneficiaryOptions}'\n location-options='${args.locationOptions}'\n search-text=\"${args.searchText}\"\n filters-applied=\"${args.filtersApplied}\",\n ${args.selectedSortByOption ? 'selected-sort-by-option=' + args.selectedSortByOption : ''}\n ${args.selectedFilterCategory ? 'selected-filter-category=' + args.selectedFilterCategory : ''}\n ${args.selectedFilterBeneficiary ? 'selected-filter-beneficiary=' + args.selectedFilterBeneficiary : ''}\n ${args.selectedFilterLocation ? 'selected-filter-location=' + args.selectedFilterLocation : ''}\n >\n <biggive-grid slot=\"campaign-grid\" column-count=\"3\">\n <biggive-campaign-card\n campaign-type=\"Match Funded\"\n campaign-title=\"Oxford Piano Festival Fundraising Campaign for LGBTQ+ community\"\n organisation-name=\"Oxford Philharmonic Orchestra\"\n currency-code=\"GBP\"\n primary-figure-label=\"Total Raised\"\n primary-figure-amount=\"76543\"\n secondary-figure-label=\"Total Raised\"\n secondary-figure-amount=\"76543\"\n progress-bar-counter=\"75\">\n </biggive-campaign-card>\n <biggive-campaign-card\n data-filter-categories=\"[&quot;Healthcare&quot;]\"\n data-filter-beneficiaries=\"[&quot;Children&quot;]\"\n campaign-type=\"Match Funded\"\n campaign-title=\"Oxford Piano Festival Fundraising Campaign for LGBTQ+ community\"\n organisation-name=\"Oxford Philharmonic Orchestra\"\n currency-code=\"GBP\"\n primary-figure-label=\"Total Raised\"\n primary-figure-amount=\"76543\"\n secondary-figure-label=\"Total Raised\"\n secondary-figure-amount=\"76543\">\n </biggive-campaign-card>\n <biggive-campaign-card\n data-filter-categories=\"[&quot;Healthcare&quot;]\"\n data-filter-beneficiaries=\"[&quot;Children&quot;]\"\n campaign-type=\"Match Funded\"\n campaign-title=\"Oxford Piano Festival Fundraising Campaign for LGBTQ+ community\"\n organisation-name=\"Oxford Philharmonic Orchestra\"\n currency-code=\"GBP\"\n primary-figure-label=\"Total Raised\"\n primary-figure-amount=\"76543\"\n secondary-figure-label=\"Total Raised\"\n secondary-figure-amount=\"76543\">\n </biggive-campaign-card>\n </biggive-grid>\n </biggive-campaign-card-filter-grid>\n `;\n\ndocument.addEventListener('doSearchAndFilterUpdate', ($event: CustomEvent) => console.log($event.detail));\n\nexport const CampaignCardFilterGridComponent = Template.bind({});\nCampaignCardFilterGridComponent.args = {\n categoryOptions: JSON.stringify(['ABC', 'DEF']),\n beneficiaryOptions: JSON.stringify(['ABC', 'DEF']),\n locationOptions: JSON.stringify(['ABC', 'DEF']),\n searchText: '',\n selectedSortByOption: null,\n selectedFilterCategory: null,\n selectedFilterBeneficiary: null,\n selectedFilterLocation: null,\n};\n"]}
@@ -60,9 +60,6 @@ describe('biggive-campaign-card-filter-grid', () => {
60
60
  <div class="select-wrapper-3">
61
61
  <biggive-form-field-select backgroundcolour="white" id="locations" placeholder="Select location" prompt="Location" space-below="2"></biggive-form-field-select>
62
62
  </div>
63
- <div class="select-wrapper-4">
64
- <biggive-form-field-select backgroundcolour="white" id="funding" placeholder="Select funding" prompt="Funding" space-below="2"></biggive-form-field-select>
65
- </div>
66
63
  <div class="align-right">
67
64
  <biggive-button label="Apply filters"></biggive-button>
68
65
  </div>
@@ -133,9 +130,6 @@ describe('biggive-campaign-card-filter-grid', () => {
133
130
  <div class="select-wrapper-3">
134
131
  <biggive-form-field-select backgroundcolour="white" id="locations" placeholder="Select location" prompt="Location" space-below="2"></biggive-form-field-select>
135
132
  </div>
136
- <div class="select-wrapper-4">
137
- <biggive-form-field-select backgroundcolour="white" id="funding" placeholder="Select funding" prompt="Funding" space-below="2"></biggive-form-field-select>
138
- </div>
139
133
  <div class="align-right">
140
134
  <biggive-button label="Apply filters"></biggive-button>
141
135
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"biggive-campaign-card-filter-grid.spec.js","sourceRoot":"","sources":["../../../../src/components/biggive-campaign-card-filter-grid/test/biggive-campaign-card-filter-grid.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AAErF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,EAAE,CAAC,IAAI,CAAC;QACN,CAAC,aAAa,EAAE,cAAc,CAAC;QAC/B,uHAAuH;QACvH,2DAA2D;QAC3D,CAAC,aAA8B,EAAE,cAAc,CAAC;QAChD,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,0DAA0D;QACpF,CAAC,uBAAuB,EAAE,qBAAqB,CAAC;KACxC,CAAC,CAAC,oCAAoC,EAAE,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,EAAE;QAC9F,MAAM,GAAG,GAAG,IAAI,6BAA6B,EAAE,CAAC;QAEhD,GAAG,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QAChD,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QACjF,MAAM,GAAG,GAAG,IAAI,6BAA6B,EAAE,CAAC;QAEhD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;QAC5B,GAAG,CAAC,oBAAoB,GAAG,WAAW,CAAC;QACvC,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;QAC3C,kDAAkD;QAClD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,6BAA6B,CAAC;YAC3C,IAAI,EAAE,0EAA0E;SACjF,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiE7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,uDAAuD;QACvD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,6BAA6B,CAAC;YAC3C,IAAI,EAAE,wGAAwG;SAC/G,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAkE7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { newSpecPage } from '@stencil/core/testing';\nimport { BiggiveCampaignCardFilterGrid } from '../biggive-campaign-card-filter-grid';\n\ndescribe('biggive-campaign-card-filter-grid', () => {\n it.each([\n ['Most raised', 'amountRaised'],\n // client library may pass in term with casing we didn't expect, but we don't have type checking between there and here\n // so passing it in with a different type to simulate that:\n ['Most Raised' as 'Most raised', 'amountRaised'],\n ['Relevance', undefined], // can not sort by Relevance unless we have a search term.\n ['Match funds remaining', 'matchFundsRemaining'],\n ] as const)('Gets the selected sort order value', (selectedSortByOption, expectedSortByValue) => {\n const sut = new BiggiveCampaignCardFilterGrid();\n\n sut.selectedSortByOption = selectedSortByOption;\n expect(sut.getSelectedValue()).toBe(expectedSortByValue);\n });\n\n it('Gets relevance as a selected sort order value if there is a search term', () => {\n const sut = new BiggiveCampaignCardFilterGrid();\n\n sut.searchText = 'Atlantis';\n sut.selectedSortByOption = 'Relevance';\n expect(sut.getSelectedValue()).toBe('relevance');\n });\n\n it('renders with no search term', async () => {\n // Should show just 2 sort options, not Relevance.\n const page = await newSpecPage({\n components: [BiggiveCampaignCardFilterGrid],\n html: `<biggive-campaign-card-filter-grid ></biggive-campaign-card-filter-grid>`,\n });\n expect(page.root).toEqualHtml(`\n <biggive-campaign-card-filter-grid>\n <mock:shadow-root>\n <div class=\"container space-below-0\">\n <div class=\"sleeve\">\n <div class=\"search-wrap\">\n <h4>\n Find a charity or project\n </h4>\n <div class=\"field-wrap\">\n <div class=\"input-wrap\">\n <svg class=\"icon\" viewBox=\"0 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z\"></path>\n </svg>\n <input class=\"input-text\" placeholder=\"Search\" type=\"text\" value=\"\">\n </div>\n <biggive-button label=\"Search\"></biggive-button>\n </div>\n </div>\n <div class=\"sort-filter-wrap\">\n <div class=\"filter-wrap\">\n <biggive-button class=\"filter\" colourscheme=\"primary\" fullwidth=\"\" label=\"Filter\" space-below=\"0\"></biggive-button>\n <biggive-popup id=\"filter-popup\">\n <h4 class=\"space-above-0 space-below-3 text-colour-primary\">\n Filters\n </h4>\n <div class=\"select-wrapper-1\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"categories\" placeholder=\"Select category\" prompt=\"Category\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-2\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"beneficiaries\" placeholder=\"Select beneficiary\" prompt=\"Beneficiary\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-3\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"locations\" placeholder=\"Select location\" prompt=\"Location\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-4\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"funding\" placeholder=\"Select funding\" prompt=\"Funding\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"align-right\">\n <biggive-button label=\"Apply filters\"></biggive-button>\n </div>\n </biggive-popup>\n </div>\n <div class=\"sort-wrap\">\n <biggive-form-field-select id=\"sort-by\" placeholder=\"Sort by\" select-style=\"underlined\">\n <biggive-form-field-select-option label=\"Most raised\" value=\"amountRaised\"></biggive-form-field-select-option>\n <biggive-form-field-select-option label=\"Match funds remaining\" value=\"matchFundsRemaining\"></biggive-form-field-select-option>\n </biggive-form-field-select>\n </div>\n </div>\n <div class=\"selected-filter-wrap\">\n <div class=\"selected-filters\"></div>\n <div class=\"clear-all\">\n <a>\n Clear all\n </a>\n </div>\n </div>\n <div class=\"campaign-grid\">\n <slot name=\"campaign-grid\"></slot>\n </div>\n </div>\n </div>\n </mock:shadow-root>\n </biggive-campaign-card-filter-grid>\n `);\n });\n\n it('renders with a search term already in place', async () => {\n // Should show Relevance plus the other 2 sort options.\n const page = await newSpecPage({\n components: [BiggiveCampaignCardFilterGrid],\n html: `<biggive-campaign-card-filter-grid search-text=\"prefilled search\"></biggive-campaign-card-filter-grid>`,\n });\n expect(page.root).toEqualHtml(`\n <biggive-campaign-card-filter-grid search-text=\"prefilled search\">\n <mock:shadow-root>\n <div class=\"container space-below-0\">\n <div class=\"sleeve\">\n <div class=\"search-wrap\">\n <h4>\n Find a charity or project\n </h4>\n <div class=\"field-wrap\">\n <div class=\"input-wrap\">\n <svg class=\"icon\" viewBox=\"0 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z\"></path>\n </svg>\n <input class=\"input-text\" placeholder=\"Search\" type=\"text\" value=\"prefilled search\">\n </div>\n <biggive-button label=\"Search\"></biggive-button>\n </div>\n </div>\n <div class=\"sort-filter-wrap\">\n <div class=\"filter-wrap\">\n <biggive-button class=\"filter\" colourscheme=\"primary\" fullwidth=\"\" label=\"Filter\" space-below=\"0\"></biggive-button>\n <biggive-popup id=\"filter-popup\">\n <h4 class=\"space-above-0 space-below-3 text-colour-primary\">\n Filters\n </h4>\n <div class=\"select-wrapper-1\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"categories\" placeholder=\"Select category\" prompt=\"Category\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-2\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"beneficiaries\" placeholder=\"Select beneficiary\" prompt=\"Beneficiary\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-3\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"locations\" placeholder=\"Select location\" prompt=\"Location\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-4\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"funding\" placeholder=\"Select funding\" prompt=\"Funding\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"align-right\">\n <biggive-button label=\"Apply filters\"></biggive-button>\n </div>\n </biggive-popup>\n </div>\n <div class=\"sort-wrap\">\n <biggive-form-field-select id=\"sort-by\" placeholder=\"Sort by\" select-style=\"underlined\">\n <biggive-form-field-select-option label=\"Most raised\" value=\"amountRaised\"></biggive-form-field-select-option>\n <biggive-form-field-select-option label=\"Match funds remaining\" value=\"matchFundsRemaining\"></biggive-form-field-select-option>\n <biggive-form-field-select-option label=\"Relevance\" value=\"Relevance\"></biggive-form-field-select-option>\n </biggive-form-field-select>\n </div>\n </div>\n <div class=\"selected-filter-wrap\">\n <div class=\"selected-filters\"></div>\n <div class=\"clear-all\">\n <a>\n Clear all\n </a>\n </div>\n </div>\n <div class=\"campaign-grid\">\n <slot name=\"campaign-grid\"></slot>\n </div>\n </div>\n </div>\n </mock:shadow-root>\n </biggive-campaign-card-filter-grid>\n `);\n });\n});\n"]}
1
+ {"version":3,"file":"biggive-campaign-card-filter-grid.spec.js","sourceRoot":"","sources":["../../../../src/components/biggive-campaign-card-filter-grid/test/biggive-campaign-card-filter-grid.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AAErF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,EAAE,CAAC,IAAI,CAAC;QACN,CAAC,aAAa,EAAE,cAAc,CAAC;QAC/B,uHAAuH;QACvH,2DAA2D;QAC3D,CAAC,aAA8B,EAAE,cAAc,CAAC;QAChD,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,0DAA0D;QACpF,CAAC,uBAAuB,EAAE,qBAAqB,CAAC;KACxC,CAAC,CAAC,oCAAoC,EAAE,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,EAAE;QAC9F,MAAM,GAAG,GAAG,IAAI,6BAA6B,EAAE,CAAC;QAEhD,GAAG,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QAChD,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,GAAG,EAAE;QACjF,MAAM,GAAG,GAAG,IAAI,6BAA6B,EAAE,CAAC;QAEhD,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;QAC5B,GAAG,CAAC,oBAAoB,GAAG,WAAW,CAAC;QACvC,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;QAC3C,kDAAkD;QAClD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,6BAA6B,CAAC;YAC3C,IAAI,EAAE,0EAA0E;SACjF,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA8D7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,uDAAuD;QACvD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC;YAC7B,UAAU,EAAE,CAAC,6BAA6B,CAAC;YAC3C,IAAI,EAAE,wGAAwG;SAC/G,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+D7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { newSpecPage } from '@stencil/core/testing';\nimport { BiggiveCampaignCardFilterGrid } from '../biggive-campaign-card-filter-grid';\n\ndescribe('biggive-campaign-card-filter-grid', () => {\n it.each([\n ['Most raised', 'amountRaised'],\n // client library may pass in term with casing we didn't expect, but we don't have type checking between there and here\n // so passing it in with a different type to simulate that:\n ['Most Raised' as 'Most raised', 'amountRaised'],\n ['Relevance', undefined], // can not sort by Relevance unless we have a search term.\n ['Match funds remaining', 'matchFundsRemaining'],\n ] as const)('Gets the selected sort order value', (selectedSortByOption, expectedSortByValue) => {\n const sut = new BiggiveCampaignCardFilterGrid();\n\n sut.selectedSortByOption = selectedSortByOption;\n expect(sut.getSelectedValue()).toBe(expectedSortByValue);\n });\n\n it('Gets relevance as a selected sort order value if there is a search term', () => {\n const sut = new BiggiveCampaignCardFilterGrid();\n\n sut.searchText = 'Atlantis';\n sut.selectedSortByOption = 'Relevance';\n expect(sut.getSelectedValue()).toBe('relevance');\n });\n\n it('renders with no search term', async () => {\n // Should show just 2 sort options, not Relevance.\n const page = await newSpecPage({\n components: [BiggiveCampaignCardFilterGrid],\n html: `<biggive-campaign-card-filter-grid ></biggive-campaign-card-filter-grid>`,\n });\n expect(page.root).toEqualHtml(`\n <biggive-campaign-card-filter-grid>\n <mock:shadow-root>\n <div class=\"container space-below-0\">\n <div class=\"sleeve\">\n <div class=\"search-wrap\">\n <h4>\n Find a charity or project\n </h4>\n <div class=\"field-wrap\">\n <div class=\"input-wrap\">\n <svg class=\"icon\" viewBox=\"0 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z\"></path>\n </svg>\n <input class=\"input-text\" placeholder=\"Search\" type=\"text\" value=\"\">\n </div>\n <biggive-button label=\"Search\"></biggive-button>\n </div>\n </div>\n <div class=\"sort-filter-wrap\">\n <div class=\"filter-wrap\">\n <biggive-button class=\"filter\" colourscheme=\"primary\" fullwidth=\"\" label=\"Filter\" space-below=\"0\"></biggive-button>\n <biggive-popup id=\"filter-popup\">\n <h4 class=\"space-above-0 space-below-3 text-colour-primary\">\n Filters\n </h4>\n <div class=\"select-wrapper-1\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"categories\" placeholder=\"Select category\" prompt=\"Category\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-2\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"beneficiaries\" placeholder=\"Select beneficiary\" prompt=\"Beneficiary\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-3\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"locations\" placeholder=\"Select location\" prompt=\"Location\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"align-right\">\n <biggive-button label=\"Apply filters\"></biggive-button>\n </div>\n </biggive-popup>\n </div>\n <div class=\"sort-wrap\">\n <biggive-form-field-select id=\"sort-by\" placeholder=\"Sort by\" select-style=\"underlined\">\n <biggive-form-field-select-option label=\"Most raised\" value=\"amountRaised\"></biggive-form-field-select-option>\n <biggive-form-field-select-option label=\"Match funds remaining\" value=\"matchFundsRemaining\"></biggive-form-field-select-option>\n </biggive-form-field-select>\n </div>\n </div>\n <div class=\"selected-filter-wrap\">\n <div class=\"selected-filters\"></div>\n <div class=\"clear-all\">\n <a>\n Clear all\n </a>\n </div>\n </div>\n <div class=\"campaign-grid\">\n <slot name=\"campaign-grid\"></slot>\n </div>\n </div>\n </div>\n </mock:shadow-root>\n </biggive-campaign-card-filter-grid>\n `);\n });\n\n it('renders with a search term already in place', async () => {\n // Should show Relevance plus the other 2 sort options.\n const page = await newSpecPage({\n components: [BiggiveCampaignCardFilterGrid],\n html: `<biggive-campaign-card-filter-grid search-text=\"prefilled search\"></biggive-campaign-card-filter-grid>`,\n });\n expect(page.root).toEqualHtml(`\n <biggive-campaign-card-filter-grid search-text=\"prefilled search\">\n <mock:shadow-root>\n <div class=\"container space-below-0\">\n <div class=\"sleeve\">\n <div class=\"search-wrap\">\n <h4>\n Find a charity or project\n </h4>\n <div class=\"field-wrap\">\n <div class=\"input-wrap\">\n <svg class=\"icon\" viewBox=\"0 0 512 512\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z\"></path>\n </svg>\n <input class=\"input-text\" placeholder=\"Search\" type=\"text\" value=\"prefilled search\">\n </div>\n <biggive-button label=\"Search\"></biggive-button>\n </div>\n </div>\n <div class=\"sort-filter-wrap\">\n <div class=\"filter-wrap\">\n <biggive-button class=\"filter\" colourscheme=\"primary\" fullwidth=\"\" label=\"Filter\" space-below=\"0\"></biggive-button>\n <biggive-popup id=\"filter-popup\">\n <h4 class=\"space-above-0 space-below-3 text-colour-primary\">\n Filters\n </h4>\n <div class=\"select-wrapper-1\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"categories\" placeholder=\"Select category\" prompt=\"Category\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-2\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"beneficiaries\" placeholder=\"Select beneficiary\" prompt=\"Beneficiary\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"select-wrapper-3\">\n <biggive-form-field-select backgroundcolour=\"white\" id=\"locations\" placeholder=\"Select location\" prompt=\"Location\" space-below=\"2\"></biggive-form-field-select>\n </div>\n <div class=\"align-right\">\n <biggive-button label=\"Apply filters\"></biggive-button>\n </div>\n </biggive-popup>\n </div>\n <div class=\"sort-wrap\">\n <biggive-form-field-select id=\"sort-by\" placeholder=\"Sort by\" select-style=\"underlined\">\n <biggive-form-field-select-option label=\"Most raised\" value=\"amountRaised\"></biggive-form-field-select-option>\n <biggive-form-field-select-option label=\"Match funds remaining\" value=\"matchFundsRemaining\"></biggive-form-field-select-option>\n <biggive-form-field-select-option label=\"Relevance\" value=\"Relevance\"></biggive-form-field-select-option>\n </biggive-form-field-select>\n </div>\n </div>\n <div class=\"selected-filter-wrap\">\n <div class=\"selected-filters\"></div>\n <div class=\"clear-all\">\n <a>\n Clear all\n </a>\n </div>\n </div>\n <div class=\"campaign-grid\">\n <slot name=\"campaign-grid\"></slot>\n </div>\n </div>\n </div>\n </mock:shadow-root>\n </biggive-campaign-card-filter-grid>\n `);\n });\n});\n"]}
@@ -17,7 +17,7 @@ export class BiggiveCampaignHighlights {
17
17
  this.championUrl = undefined;
18
18
  }
19
19
  render() {
20
- return (h("div", { key: '11aa69248c3c9eb8e4811a5b87cd79287d7ee875', class: 'container space-below-' + this.spaceBelow }, h("div", { key: '48cbb71eb788caf46c2f2a6fbbfcc38815d53117', class: "sleeve" }, this.campaignTitle != null ? (h("div", { class: "campaign-title" }, h("span", null, this.campaignTitle))) : null, this.banner !== null && this.banner !== undefined ? (h("div", { class: "image-wrap banner", style: { 'background-image': 'url(' + this.banner + ')' } }, h("img", { src: this.banner, class: "banner" }))) : null, h("div", { key: '620b6eb353820ee18a5707841173afab38b6aeb5', class: "meta-wrap" }, h("div", { key: 'f67ea2bcc1ecd24aa0f85fe483a6c857253e2c78', class: "meta-item" }, h("span", { key: '642352b8f74be7f7c0528b981d9f1fd2fa28d69d', class: "label" }, this.primaryFigureLabel), h("span", { key: 'aac9670f55a0acda723557c2ccaee7eb21dbb304', class: "text" }, this.primaryFigureAmount)), h("div", { key: '0fbc001cd43b05a010a20b805e09d14abe5ed8b6', class: "meta-item" }, h("span", { key: '6da7c35c173f9b85f5ae599cd71ebe9f057eee5e', class: "label" }, this.secondaryFigureLabel), h("span", { key: 'fb8a73d05af3dccb8bc01efbf2138cd1e8094d44', class: "text" }, this.secondaryFigureAmount))), h("div", { key: 'b3a624276f3534b470bd6dc65c46c45fae97a0e4', class: "progress-bar-wrap" }, h("biggive-progress-bar", { key: '7e185a351c7347bd66626dad682c9aa828cc0524', counter: this.progressBarCounter, "colour-scheme": "primary" })), h("div", { key: '7ea6adcacde75efff01b2516c29a30c8a021287b', class: "stat-wrap" }, this.primaryStatIcon != null ? (h("div", { class: "stat-item" }, h("biggive-misc-icon", { icon: this.primaryStatIcon, "background-colour": "white", "icon-colour": "tertiary" }), h("span", { class: "label" }, this.primaryStatText))) : null, this.secondaryStatIcon != null ? (h("div", { class: "stat-item" }, h("biggive-misc-icon", { icon: this.secondaryStatIcon, "background-colour": "white", "icon-colour": "tertiary" }), h("span", { class: "label" }, this.secondaryStatText))) : null), this.championName != null ? (h("div", { class: "championed-by" }, "Championed by ", h("a", { href: this.championUrl }, this.championName))) : null)));
20
+ return (h("div", { key: 'b0357c81263beb2277985a0793f455a248187134', class: 'container space-below-' + this.spaceBelow }, h("div", { key: 'e55e2401cfdb26448bb40f02edf70bb2c135d5b3', class: "sleeve" }, this.campaignTitle != null ? (h("div", { class: "campaign-title" }, h("span", null, this.campaignTitle))) : null, this.banner !== null && this.banner !== undefined ? (h("div", { class: "image-wrap banner", style: { 'background-image': 'url(' + this.banner + ')' } }, h("img", { src: this.banner, class: "banner" }))) : null, h("div", { key: 'fa828f6b43e8963423328082c331cc9881e9f56e', class: "meta-wrap" }, h("div", { key: 'cf44139ef09edc237b43547e2980334ba700e573', class: "meta-item" }, h("span", { key: '110e506e0323711ec2a0a721813465097d039224', class: "label" }, this.primaryFigureLabel), h("span", { key: '4f7e1e04a962bb7fb027c6a06d2ee1714a1d0a85', class: "text" }, this.primaryFigureAmount)), h("div", { key: '925c7866f64026d14217583e886d2c9fa34ab3f5', class: "meta-item" }, h("span", { key: 'ad0a802c3ab0d9a4adebb6b195bf955a75cf70e6', class: "label" }, this.secondaryFigureLabel), h("span", { key: 'c0ec0cc87b6953db0ad072c853a918fc0188a423', class: "text" }, this.secondaryFigureAmount))), h("div", { key: 'fd425ebdc06f9e5e14722700de400c1f67d3e1d2', class: "progress-bar-wrap" }, h("biggive-progress-bar", { key: 'ab66eac351b9b00edcd405fd8acc3be49dc960c1', counter: this.progressBarCounter, "colour-scheme": "primary" })), h("div", { key: 'fbe28fe65217d92efa9731972b583b9696794dd5', class: "stat-wrap" }, this.primaryStatIcon != null ? (h("div", { class: "stat-item" }, h("biggive-misc-icon", { icon: this.primaryStatIcon, "background-colour": "white", "icon-colour": "tertiary" }), h("span", { class: "label" }, this.primaryStatText))) : null, this.secondaryStatIcon != null ? (h("div", { class: "stat-item" }, h("biggive-misc-icon", { icon: this.secondaryStatIcon, "background-colour": "white", "icon-colour": "tertiary" }), h("span", { class: "label" }, this.secondaryStatText))) : null), this.championName != null ? (h("div", { class: "championed-by" }, "Championed by ", h("a", { href: this.championUrl }, this.championName))) : null)));
21
21
  }
22
22
  static get is() { return "biggive-campaign-highlights"; }
23
23
  static get encapsulation() { return "shadow"; }
@@ -13,7 +13,7 @@ export class BiggiveCategoryIcon {
13
13
  return icon;
14
14
  }
15
15
  render() {
16
- return (h("div", { key: 'dd78e48e4ff752bb4b89e1843076d94bf1b75ad7', class: "container" }, h("div", { key: '2f5eb2fc584151f92ea71829f18f9accc2b3137f', class: 'category-icon-item background-colour-' + this.backgroundColour }, h("a", { key: '37801c3963fe056c6b8ded5b37c0a6728ad61d98', href: this.url }, h("svg", { key: '90152776306a73b39321724103540e328fa2bacf', width: this.getCategoryIcon().icon[0], height: this.getCategoryIcon().icon[1], xmlns: "http://www.w3.org/2000/svg", class: 'fill-' + this.iconColour, viewBox: '0 0 ' + this.getCategoryIcon().icon[0] + ' ' + this.getCategoryIcon().icon[1] }, h("path", { key: 'a4bf38cb8384443a7ebd643198e417e03398d03c', d: this.getCategoryIcon().icon[4].toString() })))), h("div", { key: '6b33018afa1d64152d93671dd9d2666f6ea8a5ab', class: "label" }, this.label)));
16
+ return (h("div", { key: 'dd8aaaf26599d4efa7f3e4307c28c2abf93f428a', class: "container" }, h("div", { key: 'd47e5f9e3ca4ec677c1231c418415f8c4bacc459', class: 'category-icon-item background-colour-' + this.backgroundColour }, h("a", { key: '749a1281eea652790f5e32249d471f2b35d0ceb6', href: this.url }, h("svg", { key: 'ffaa6013742a1c426465e34aafb20f54e63f5db6', width: this.getCategoryIcon().icon[0], height: this.getCategoryIcon().icon[1], xmlns: "http://www.w3.org/2000/svg", class: 'fill-' + this.iconColour, viewBox: '0 0 ' + this.getCategoryIcon().icon[0] + ' ' + this.getCategoryIcon().icon[1] }, h("path", { key: 'b61ff115f5c9b2045e6eda0e8ad5d6b09e0a39b9', d: this.getCategoryIcon().icon[4].toString() })))), h("div", { key: 'dc3c8aa3cf1468287657fac7001db3da9d73e235', class: "label" }, this.label)));
17
17
  }
18
18
  static get is() { return "biggive-category-icon"; }
19
19
  static get originalStyleUrls() {
@@ -46,7 +46,7 @@ export class BiggiveCookieBanner {
46
46
  // then the app may only pass a partial set of them in for a time. Any preference not passed will be treated as
47
47
  // declined.
48
48
  const cookiesCurrentlyAllowed = this.previouslyAgreedCookiePreferences || {};
49
- return (h("div", { key: '715def3ec5b6fa0f3a3ee3f019ea9dfc1f376eb9', class: "cooke-consent-container" }, h("biggive-popup", { key: '4a1e1b69cfc3cd872d89a4b601c4e6516c40f47f', id: "cookie-preferences-popup", modalClosedCallback: this.preferenceModalClosed.emit }, h("div", { key: 'a131a687dab90c9d5858bb4a9f28f11f31149487', class: "content" }, h("h4", { key: '188f6ae6fb5a66ffe7b8a2e3f9da4cec3df6a243', class: "space-above-0 space-below-3 text-colour-primary" }, "Manage your cookie preferences"), h("form", { key: '31046d5b9b5ed2d7840d739513d6c6475c93f1d6' }, h("div", { key: '01e608a3be653c6902df36e24deec643a9ef6287', class: "radio-group" }, h("h5", { key: 'c318c00f209817a7f7c3a73f7e75ef9fdbfea723' }, "Essential Cookies"), h("p", { key: '7910040742a0da5f993c2a3a04bda55812a0f6c5' }, "These cookies are necessary to ensure our website functions correctly and include required cookies from third parties."), h("input", { key: 'd5ad3664d9aa7e797764b15fa221635173c8c30b', type: "radio", name: "necassary", id: "necassary-off", disabled: true }), h("label", { key: 'f19f04bdbff4683c74c348970bf620c915d282a7', htmlFor: "necassary-on" }, "Off"), h("input", { key: '98c5cc0b9b329241833c8d0f744eda7f90fd8550', type: "radio", name: "necassary", id: "necassary-on", disabled: true, checked: true }), h("label", { key: '95a8d5651e97b5a8e7645e34f7301cbda63f26ce', htmlFor: "necassary-on" }, "On")), h("div", { key: 'f519c29fb135bdc7464300ef611ffe7de1dff98e', class: "radio-group" }, h("h5", { key: '457709d079810b13a73535f1b620d2c367a84c44' }, "Analytics & Testing Cookies"), h("p", { key: '573893435daf5a3c9b9d3a0665ffd18b0aee6822' }, "We use analytics cookies to track activity on our website. For example, the pages you\u2019ve visited, the content you\u2019ve engaged with and the search terms you\u2019ve used. This allows us to personalise and improve our content."), h("p", { key: 'aaf730fb65e04d4151a7e3ca9c3c261a64b92fda' }, "We use testing cookies to collect data on how you interact with website features. These insights allow us to update our website and build features that enhance your user experience."), h("input", { key: 'ac3977d920e46c7130b7dcf91c0b5c53eb9a040c', type: "radio", name: "a-and-t", id: "a-and-t-off", checked: !cookiesCurrentlyAllowed.analyticsAndTesting }), h("label", { key: 'efe467dc5297de55aaf87e9bf8f5fc96580930fa', htmlFor: "a-and-t-off" }, "Off"), h("input", { key: 'da2d3be8700a179c2e2e18d56b6e19c80034ca89', type: "radio", name: "a-and-t", id: "a-and-t-on", checked: !!cookiesCurrentlyAllowed.analyticsAndTesting }), h("label", { key: '7936811c007e1721eb48b63735a2c979a2c70be3', htmlFor: "a-and-t-on" }, "On")), h("div", { key: '0c7501a1c16d7947d74c757acd066d10e97db1c8', class: "radio-group" }, h("h5", { key: '10068c6a98eae8bdc06dcb5b30081c08b6129154' }, "Third-party Cookies "), h("p", { key: 'a3c2d794d046f607c9041a78c124862ee98bec69' }, "These cookies are used to track activity, which can help to provide a better experience and improve functionality across various applications. For example, our donation experience survey."), h("input", { key: '8e729db7d255c123401f9494340ada09ced12858', type: "radio", name: "third-party", id: "third-party-off", checked: !cookiesCurrentlyAllowed.thirdParty }), h("label", { key: 'f348931f582047949283a9c0268d19f84308f3dc', htmlFor: "third-party-off" }, "Off"), h("input", { key: '1d293558c97cb24742cab1c06a1ad0a972cf70fa', type: "radio", name: "third-party", id: "third-party-on", checked: !!cookiesCurrentlyAllowed.thirdParty }), h("label", { key: 'b7c03be13c4f3b919e8f788ddeae6d054e709fd1', htmlFor: "third-party-on" }, "On")), h("biggive-button", { key: '18c1a69134aa10318d78b68535827358554dbd08', "space-below": "0", "space-above": "2", "colour-scheme": "secondary", "is-past-campaign": "false", "is-future-campaign": "false", label: "Accept Selected Cookies", "open-in-new-tab": "false", "full-width": "false", size: "small", rounded: false, centered: false, "button-id": "accept-selected-button", onClick: this.handleAcceptSelectedCookies })), h("p", { key: '6c0cc30fcb04a422fa14294b49b17b02d60579bb' }, "You can change the above settings for this browser at any time by clicking the privacy settings link in the footer of the page."))), h("h2", { key: '318e16c617f05bb6d6de9407ac941f466b12cfd1' }, "Our website uses cookies"), h("p", { key: 'd0a69145ed978cd6885da3e996ba072e23de0c4f' }, "We use some essential cookies to make our website work. We'd also like to share data with our analytics platform and use analytics cookies to understand how you use the website and make improvements."), h("p", { key: '2cf683d569f7a8b1810034d61f7a9a619d519e31' }, h("a", { key: '1ba8d026f31b9bc84f3656c2cb2a1d11973f591c', href: this.blogUriPrefix + '/privacy#cookies', target: "_blank" }, "Find out more in our Cookies Statement")), h("div", { key: '1e0e74ec93a442578b0aa934cd21751edf72c27e', class: "button-group" }, h("biggive-button", { key: '7960eadc62266d5638fb6c4efd73209906f51278', onClick: this.handleAcceptAllClick, "space-below": "0", "colour-scheme": "secondary", "is-past-campaign": "false", "is-future-campaign": "false", label: "Accept All", "open-in-new-tab": "false", "full-width": "true", size: "medium", rounded: false, centered: false, "button-id": "accept-all-button" }), h("biggive-button", { key: '8b8c566f36dbafa5e6688d95e0aad526df8eeb65', onClick: this.handleRejectAllClicked, "space-below": "0", "colour-scheme": "grey-light", "is-past-campaign": "false", "is-future-campaign": "false", label: "Essential Cookies Only", "open-in-new-tab": "false", "full-width": "true", size: "medium", rounded: false, centered: false, "button-id": "choose-preferences-button" }), h("biggive-button", { key: 'eeb5f9a1dd0ef3ec59dfd07b70fefa5273143155', onClick: this.handleChoosePrefencesClick, "space-below": "0", "colour-scheme": "grey-light", "is-past-campaign": "false", "is-future-campaign": "false", label: "Choose Preferences", "open-in-new-tab": "false", "full-width": "true", size: "medium", rounded: false, centered: false, "button-id": "choose-preferences-button" }))));
49
+ return (h("div", { key: '2c1104a9813c83d34ce594ff1691fe0d951147af', class: "cooke-consent-container" }, h("biggive-popup", { key: '2dff512f3a263eeacbac0aad46d66e69e5b146d7', id: "cookie-preferences-popup", modalClosedCallback: this.preferenceModalClosed.emit }, h("div", { key: 'd18feb6c261cb7fde5be850f53b4cd488d24e11d', class: "content" }, h("h4", { key: '7e28936785db1ca5bc53b5c7c1a8ee39082ad2c2', class: "space-above-0 space-below-3 text-colour-primary" }, "Manage your cookie preferences"), h("form", { key: '7ca61fd8c3fe5994389d5b46f7dfd03a8afbe208' }, h("div", { key: '775acac38a7df7b09110862e70c7a4b81504682c', class: "radio-group" }, h("h5", { key: '344d4158f32db39e6f31ced6e09a8044965cf1ef' }, "Essential Cookies"), h("p", { key: '1799fde5aadbc48bee8fe73c552ef816fc7c6307' }, "These cookies are necessary to ensure our website functions correctly and include required cookies from third parties."), h("input", { key: '24ff246c284deea5823652da055955a44d5798e6', type: "radio", name: "necassary", id: "necassary-off", disabled: true }), h("label", { key: '0a446bfd99ee942d99b3bca7e36cb1e69b6ee6ad', htmlFor: "necassary-on" }, "Off"), h("input", { key: '7276e7f8ff0bf8f6d08990b10f3f404454f6d2ca', type: "radio", name: "necassary", id: "necassary-on", disabled: true, checked: true }), h("label", { key: '106703b4507c1e7b91a574d09edfef3d33d5574e', htmlFor: "necassary-on" }, "On")), h("div", { key: '2f38e131cefb302523cdafbcdba29d0ecb81c511', class: "radio-group" }, h("h5", { key: '2d4de51a101d733ac1bcc73b43940b5ef8624814' }, "Analytics & Testing Cookies"), h("p", { key: '4ac273420f70071e712ed8f2c94cf20b4dd1cf54' }, "We use analytics cookies to track activity on our website. For example, the pages you\u2019ve visited, the content you\u2019ve engaged with and the search terms you\u2019ve used. This allows us to personalise and improve our content."), h("p", { key: 'eaa1a4a6d9a1e6de33111dc17135a6b8f2cd417a' }, "We use testing cookies to collect data on how you interact with website features. These insights allow us to update our website and build features that enhance your user experience."), h("input", { key: '85d5f29b518f8ac7982d1c2b91651649662ac7eb', type: "radio", name: "a-and-t", id: "a-and-t-off", checked: !cookiesCurrentlyAllowed.analyticsAndTesting }), h("label", { key: 'acdfcc8220db6e288349ba58e5a60adf4d2c519b', htmlFor: "a-and-t-off" }, "Off"), h("input", { key: 'd61018e050683ce6c33026595e8f04be92a419c9', type: "radio", name: "a-and-t", id: "a-and-t-on", checked: !!cookiesCurrentlyAllowed.analyticsAndTesting }), h("label", { key: 'bbae338187974bac27f612f33fa06d9276e9c335', htmlFor: "a-and-t-on" }, "On")), h("div", { key: 'dd6f4d2f4e011badb464187fe1f6fc207cede944', class: "radio-group" }, h("h5", { key: '44c6a8e23040e26f13c08d03fbfedb50b516554e' }, "Third-party Cookies "), h("p", { key: 'f37dbd6801350fb982019af87e1d72bc2a98db33' }, "These cookies are used to track activity, which can help to provide a better experience and improve functionality across various applications. For example, our donation experience survey."), h("input", { key: '6fae3fcfbccd5176f1cba272c9bc1276e7f79b0d', type: "radio", name: "third-party", id: "third-party-off", checked: !cookiesCurrentlyAllowed.thirdParty }), h("label", { key: '4dc7008f9203db028312c34b91e9ddd550be2d91', htmlFor: "third-party-off" }, "Off"), h("input", { key: '6980c2fef711d79af95ffc72b11e11832f98440e', type: "radio", name: "third-party", id: "third-party-on", checked: !!cookiesCurrentlyAllowed.thirdParty }), h("label", { key: '39ad3a1aafe808b50da6ec67c3a87473b36b6565', htmlFor: "third-party-on" }, "On")), h("biggive-button", { key: 'c180bff4279b0588b441528835b01703c66ade74', "space-below": "0", "space-above": "2", "colour-scheme": "secondary", "is-past-campaign": "false", "is-future-campaign": "false", label: "Accept Selected Cookies", "open-in-new-tab": "false", "full-width": "false", size: "small", rounded: false, centered: false, "button-id": "accept-selected-button", onClick: this.handleAcceptSelectedCookies })), h("p", { key: 'c86c83dc170dd77adbd5f14b64c3585d8d994483' }, "You can change the above settings for this browser at any time by clicking the privacy settings link in the footer of the page."))), h("h2", { key: 'a8b701ef2bc9a8b5f9837a7715f6a8869a65ebd3' }, "Our website uses cookies"), h("p", { key: '9e90769a0b004b2eb25044b881206d858c487e4a' }, "We use some essential cookies to make our website work. We'd also like to share data with our analytics platform and use analytics cookies to understand how you use the website and make improvements."), h("p", { key: '03f2c01dcf5ac8d5a425aa4bb208380cc9bdf194' }, h("a", { key: 'b713a288cffd681331fb564e33c7a67e2aa95718', href: this.blogUriPrefix + '/privacy#cookies', target: "_blank" }, "Find out more in our Cookies Statement")), h("div", { key: 'cb3e702c3da539ab4ec3177d1a33a871c4172e3b', class: "button-group" }, h("biggive-button", { key: 'ab3f44d9b67dcb6794afae2ca7490d76454f68eb', onClick: this.handleAcceptAllClick, "space-below": "0", "colour-scheme": "secondary", "is-past-campaign": "false", "is-future-campaign": "false", label: "Accept All", "open-in-new-tab": "false", "full-width": "true", size: "medium", rounded: false, centered: false, "button-id": "accept-all-button" }), h("biggive-button", { key: 'eb71f259ff798eee57cca0d307d7d0766f5077cc', onClick: this.handleRejectAllClicked, "space-below": "0", "colour-scheme": "grey-light", "is-past-campaign": "false", "is-future-campaign": "false", label: "Essential Cookies Only", "open-in-new-tab": "false", "full-width": "true", size: "medium", rounded: false, centered: false, "button-id": "choose-preferences-button" }), h("biggive-button", { key: '36d4f0fff4439a4e545b0ff931a16d4eb10d420c', onClick: this.handleChoosePrefencesClick, "space-below": "0", "colour-scheme": "grey-light", "is-past-campaign": "false", "is-future-campaign": "false", label: "Choose Preferences", "open-in-new-tab": "false", "full-width": "true", size: "medium", rounded: false, centered: false, "button-id": "choose-preferences-button" }))));
50
50
  }
51
51
  static get is() { return "biggive-cookie-banner"; }
52
52
  static get encapsulation() { return "shadow"; }
@@ -1,7 +1,7 @@
1
1
  import { Host, h } from "@stencil/core";
2
2
  export class BiggiveForm {
3
3
  render() {
4
- return (h(Host, { key: '70c1f8efdede765a6f323ed9aef453b5c398e1a9' }, h("slot", { key: '4b519504bc188ef13375616470a98872b26c9819' })));
4
+ return (h(Host, { key: '1f4186e3fbc944cc380d2df67d69df72f0de4843' }, h("slot", { key: '8c23f32b8c4d433b13e42d3abc2eaddfcde5a3b2' })));
5
5
  }
6
6
  static get is() { return "biggive-form"; }
7
7
  static get encapsulation() { return "shadow"; }
@@ -38,12 +38,12 @@ export class BiggiveFormFieldSelect {
38
38
  console.error('options undefined');
39
39
  options = [];
40
40
  }
41
- return (h("div", { key: '6da7aa947230f09540dc9aab87e37ae68f88d215', class: "selectWrapper" }, h("label", { key: '23e108bd92e1c74cbcf7baaee5b5da676e89a7b6', class: greyIfRequired }, h("div", { key: '584afc61b6ebaf8cc42979a84bde78f232badd4d', class: 'prompt' + greyIfRequired }, this.prompt), h("div", { key: 'd293c7b59ea33795a60008b3c895886deded30da', class: 'dropdown space-below-' +
41
+ return (h("div", { key: '8af3899cef3d85d076d942690cac60103fed412b', class: "selectWrapper" }, h("label", { key: 'e153eeada55497f16c9d2551ade6803fb57f0108', class: greyIfRequired }, h("div", { key: '960d79669afdd0eef4dcba60ec03b1e1b596133e', class: 'prompt' + greyIfRequired }, this.prompt), h("div", { key: '7f2095e89fd4e6097d373fcdf91e811953862cbf', class: 'dropdown space-below-' +
42
42
  this.spaceBelow +
43
43
  ' select-style-' +
44
44
  this.selectStyle +
45
45
  (this.prompt === null ? ' noprompt' : '') +
46
- (this.selectedOptionColour === 'inherit' ? ' inherit-colour' : '') }, h("div", { key: 'dbd9e22f022522e5b49a71083dbf2fe1b8e36eed', class: "sleeve" }, h("select", { key: 'd71fa54228c22baf586cfb1a05de589dce54d1e0', class: greyIfRequired, onChange: this.doOptionSelectCompletedHandler }, options.map(option => (h("option", { selected: this.selectedValue === option.value, value: option.value }, option.label)))), h("div", { key: '18e70e7358cc82b49fa9b4e86b5230946737bb01', class: "arrow" }))))));
46
+ (this.selectedOptionColour === 'inherit' ? ' inherit-colour' : '') }, h("div", { key: '99215955482a9555d0e968c6c94b32da0ab29e75', class: "sleeve" }, h("select", { key: '1b488b3bfd3ebc2693c280a573d54a6d001e5e7e', class: greyIfRequired, onChange: this.doOptionSelectCompletedHandler }, options.map(option => (h("option", { selected: this.selectedValue === option.value, value: option.value }, option.label)))), h("div", { key: '90f67b09ca37b6d0f1eedc685abf3ab93afe1a2b', class: "arrow" }))))));
47
47
  }
48
48
  static get is() { return "biggive-form-field-select"; }
49
49
  static get encapsulation() { return "shadow"; }
@@ -6,7 +6,7 @@ export class BiggiveFormattedText {
6
6
  this.maxWidth = 100;
7
7
  }
8
8
  render() {
9
- return (h("div", { key: '819551388ab2e704f62177a9d1d6452e2ef796e9', class: 'container max-width-' + this.maxWidth + ' text-colour-' + this.defaultTextColour + ' space-below-' + this.spaceBelow }, h("slot", { key: '78079b493a49adbd78781667504db3ce0c30a708' })));
9
+ return (h("div", { key: '2b1ecb98b3203db808c7ab84889556963e7a0252', class: 'container max-width-' + this.maxWidth + ' text-colour-' + this.defaultTextColour + ' space-below-' + this.spaceBelow }, h("slot", { key: 'adca1c624c35466b6057f55a07fb59e6146743a6' })));
10
10
  }
11
11
  static get is() { return "biggive-formatted-text"; }
12
12
  static get encapsulation() { return "shadow"; }
@@ -28,7 +28,7 @@ export class BiggiveGenericIcon {
28
28
  const iconDefinition = this.getIconDefinition();
29
29
  return (
30
30
  // Note: the icon name prop is set as a css class too for any styling specific to certain icons
31
- h("div", { key: '443fe74064bac6cef7a6ce319fd9fb26bc8993a9', class: 'generic-icon-item background-colour-' + this.backgroundColour + ' ' + this.icon }, h("a", { key: '86b7eb52ea7a20a1721d948eefe4b216a1e1f7c3', href: this.url }, iconDefinition ? (h("svg", { width: iconDefinition.icon[0], height: iconDefinition.icon[1], xmlns: "http://www.w3.org/2000/svg", class: 'fill-' + this.iconColour, viewBox: '0 0 ' + iconDefinition.icon[0] + ' ' + iconDefinition.icon[1] }, h("path", { d: iconDefinition.icon[4].toString() }))) : null)));
31
+ h("div", { key: '3dd00dc22f91d283d753b5260b0720e8ae31aa42', class: 'generic-icon-item background-colour-' + this.backgroundColour + ' ' + this.icon }, h("a", { key: 'ac69ce91f9cc65bfa50581e95591dcafed2f979b', href: this.url }, iconDefinition ? (h("svg", { width: iconDefinition.icon[0], height: iconDefinition.icon[1], xmlns: "http://www.w3.org/2000/svg", class: 'fill-' + this.iconColour, viewBox: '0 0 ' + iconDefinition.icon[0] + ' ' + iconDefinition.icon[1] }, h("path", { d: iconDefinition.icon[4].toString() }))) : null)));
32
32
  }
33
33
  static get is() { return "biggive-generic-icon"; }
34
34
  static get originalStyleUrls() {
@@ -7,7 +7,7 @@ export class BiggiveGrid {
7
7
  this.columnGap = 0;
8
8
  }
9
9
  render() {
10
- return (h("div", { key: 'd5546015f64264d5b6873b7a94d74a4b275f7f1c', class: 'grid column-count-' + this.columnCount + ' space-below-' + this.spaceBelow + ' column-gap-' + this.columnGap + (this.spaceBetween ? ' space-between' : '') }, h("slot", { key: '4320b2c55ac6618bb9adad682029346aae300ed8' })));
10
+ return (h("div", { key: '1b506342f889aab0f87cc4f8d10ada30ce932522', class: 'grid column-count-' + this.columnCount + ' space-below-' + this.spaceBelow + ' column-gap-' + this.columnGap + (this.spaceBetween ? ' space-between' : '') }, h("slot", { key: 'fae74aa675e2b3f784598c56f4673b1e9bf06edc' })));
11
11
  }
12
12
  static get is() { return "biggive-grid"; }
13
13
  static get encapsulation() { return "shadow"; }
@@ -13,7 +13,7 @@ export class BiggiveHeading {
13
13
  }
14
14
  render() {
15
15
  const Tag = this.htmlElement;
16
- return (h("div", { key: '6f0be9ecfa1279515480fa8abc640493ae499e80', class: 'container align-' + this.align + ' space-above-' + this.spaceAbove + ' space-below-' + this.spaceBelow }, h(Tag, { key: '49a66dc67b798a22e21804c832c8db31cdae4e4f', class: 'heading-colour-' + this.colour + ' icon-colour-' + this.iconColour + ' heading-' + this.size }, this.icon ? (h("svg", { viewBox: "0 0 102 88" }, h("path", { class: "st0", d: "M51.2,0l-51,88h102L51.2,0z" }), h("path", { d: "M31,68.3c-1,0-1.9-0.9-1.9-1.9c0-1,0.9-1.9,1.9-1.9c1.1,0,1.9,0.9,1.9,1.9C32.9,67.5,32.1,68.3,31,68.3z M29.5,79.4h3v-10\n h-3V79.4z M41,69.4V70c-0.5-0.5-1.4-0.9-2.5-0.9c-2.7,0-4.9,2-4.9,4.9c0,2.9,2.2,4.9,4.9,4.9c1.1,0,2-0.3,2.5-0.9v0.6\n c0,1.3-1.2,1.9-2.7,1.9c-1.3,0-2.4-0.3-3.5-0.9v3c1.3,0.5,2.7,0.6,3.6,0.6c3,0,5.5-1.3,5.5-4.6v-9.4L41,69.4L41,69.4z M41,75.3\n c-0.4,0.6-1.2,0.9-1.9,0.9c-1.3,0-2.3-0.8-2.3-2.2c0-1.4,1-2.2,2.3-2.2c0.8,0,1.5,0.4,1.9,0.9V75.3z M52.8,79.7\n c2.4,0,3.8-0.4,5.1-1.2v-7.7h-6.6v2.9h3.5v2.6c-0.5,0.1-1.1,0.3-1.9,0.3c-3,0-4.4-2-4.4-4.3c0-2.3,1.7-4.3,4.8-4.3\n c1.3,0,2.6,0.4,3.5,0.9v-3.3c-0.9-0.4-2.1-0.7-3.7-0.7c-4.6,0-7.8,3.3-7.8,7.4C45.2,76.5,48.1,79.7,52.8,79.7z M60.7,68.3\n c-1,0-1.9-0.9-1.9-1.9c0-1,0.9-1.9,1.9-1.9c1.1,0,1.9,0.9,1.9,1.9C62.6,67.5,61.8,68.3,60.7,68.3z M59.2,79.4h3v-10h-3V79.4z\n M69,73.9l-2.6-4.5h-3.5l6,10.3l6-10.3h-3.5L69,73.9z M77.5,75.1h7c0-4.4-2.5-6-5.1-6c-2.7,0-5.1,1.6-5.1,5.2c0,3.5,2.5,5.2,5.5,5.2\n c1.3,0,2.7-0.2,3.8-0.8v-2.8c-1.5,0.9-2.5,0.9-3.3,0.9C78.9,76.9,77.6,76.5,77.5,75.1z M79.4,71.5c0.9,0,1.7,0.4,1.8,1.7h-3.7\n C77.7,72,78.6,71.5,79.4,71.5z M26,71.6c0.7-0.6,1.1-1.5,1.1-2.5c0-1.9-1.8-3.9-4.4-3.9h-4.8v14.3h6.3c2.4,0,4.3-1.9,4.3-4.2\n C28.4,73.8,27.8,72.2,26,71.6z M21,68.1h1.4c0.9,0,1.5,0.7,1.5,1.4c0,0.8-0.6,1.4-1.5,1.4H21V68.1z M23.8,76.5H21v-2.9h2.8\n c0.9,0,1.5,0.6,1.5,1.4C25.3,75.9,24.7,76.5,23.8,76.5z" }))) : null, this.text)));
16
+ return (h("div", { key: '8a56b518e74b57668e35bd800d65ffacd3613855', class: 'container align-' + this.align + ' space-above-' + this.spaceAbove + ' space-below-' + this.spaceBelow }, h(Tag, { key: 'bb0b07ad14f57c04b5beb4b859efc7bc5297caf2', class: 'heading-colour-' + this.colour + ' icon-colour-' + this.iconColour + ' heading-' + this.size }, this.icon ? (h("svg", { viewBox: "0 0 102 88" }, h("path", { class: "st0", d: "M51.2,0l-51,88h102L51.2,0z" }), h("path", { d: "M31,68.3c-1,0-1.9-0.9-1.9-1.9c0-1,0.9-1.9,1.9-1.9c1.1,0,1.9,0.9,1.9,1.9C32.9,67.5,32.1,68.3,31,68.3z M29.5,79.4h3v-10\n h-3V79.4z M41,69.4V70c-0.5-0.5-1.4-0.9-2.5-0.9c-2.7,0-4.9,2-4.9,4.9c0,2.9,2.2,4.9,4.9,4.9c1.1,0,2-0.3,2.5-0.9v0.6\n c0,1.3-1.2,1.9-2.7,1.9c-1.3,0-2.4-0.3-3.5-0.9v3c1.3,0.5,2.7,0.6,3.6,0.6c3,0,5.5-1.3,5.5-4.6v-9.4L41,69.4L41,69.4z M41,75.3\n c-0.4,0.6-1.2,0.9-1.9,0.9c-1.3,0-2.3-0.8-2.3-2.2c0-1.4,1-2.2,2.3-2.2c0.8,0,1.5,0.4,1.9,0.9V75.3z M52.8,79.7\n c2.4,0,3.8-0.4,5.1-1.2v-7.7h-6.6v2.9h3.5v2.6c-0.5,0.1-1.1,0.3-1.9,0.3c-3,0-4.4-2-4.4-4.3c0-2.3,1.7-4.3,4.8-4.3\n c1.3,0,2.6,0.4,3.5,0.9v-3.3c-0.9-0.4-2.1-0.7-3.7-0.7c-4.6,0-7.8,3.3-7.8,7.4C45.2,76.5,48.1,79.7,52.8,79.7z M60.7,68.3\n c-1,0-1.9-0.9-1.9-1.9c0-1,0.9-1.9,1.9-1.9c1.1,0,1.9,0.9,1.9,1.9C62.6,67.5,61.8,68.3,60.7,68.3z M59.2,79.4h3v-10h-3V79.4z\n M69,73.9l-2.6-4.5h-3.5l6,10.3l6-10.3h-3.5L69,73.9z M77.5,75.1h7c0-4.4-2.5-6-5.1-6c-2.7,0-5.1,1.6-5.1,5.2c0,3.5,2.5,5.2,5.5,5.2\n c1.3,0,2.7-0.2,3.8-0.8v-2.8c-1.5,0.9-2.5,0.9-3.3,0.9C78.9,76.9,77.6,76.5,77.5,75.1z M79.4,71.5c0.9,0,1.7,0.4,1.8,1.7h-3.7\n C77.7,72,78.6,71.5,79.4,71.5z M26,71.6c0.7-0.6,1.1-1.5,1.1-2.5c0-1.9-1.8-3.9-4.4-3.9h-4.8v14.3h6.3c2.4,0,4.3-1.9,4.3-4.2\n C28.4,73.8,27.8,72.2,26,71.6z M21,68.1h1.4c0.9,0,1.5,0.7,1.5,1.4c0,0.8-0.6,1.4-1.5,1.4H21V68.1z M23.8,76.5H21v-2.9h2.8\n c0.9,0,1.5,0.6,1.5,1.4C25.3,75.9,24.7,76.5,23.8,76.5z" }))) : null, this.text)));
17
17
  }
18
18
  static get is() { return "biggive-heading"; }
19
19
  static get encapsulation() { return "shadow"; }
@@ -23,9 +23,9 @@ export class BiggiveHeroImage {
23
23
  render() {
24
24
  const mainTitleClasses = 'main-title ' + (typeof this.mainTitleColour === 'string' && this.mainTitleColour.length > 0 ? `text-colour-${this.mainTitleColour}` : '');
25
25
  const teaserClasses = 'teaser ' + (typeof this.teaserColour === 'string' && this.teaserColour.length > 0 ? `text-colour-${this.teaserColour}` : '');
26
- return (h("div", { key: '4889f4e8a3f2d8caf63aec3e4ecb99288f6e5a26', class: 'container colour-scheme-' + this.colourScheme + ' space-below-' + this.spaceBelow }, h("div", { key: 'e96e9cfb75245d1ac825bf33d044a8b5ca9f4a8e', class: "sleeve" }, h("div", { key: '850ea01c76584ac845ff8b312ec39050c87ca60f', class: "content-wrap" }, this.logo !== undefined && this.logo !== null ? (h("div", { class: 'logo image-wrap logo-height-' + this.logoHeight }, h("img", { src: this.logo, alt: this.logoAltText, title: this.logoAltText }))) : h("div", { class: 'logo-space logo-height-' + this.logoHeight }), h("div", { key: 'e5c500087d6c9a790d9afe7fc83a916a9bd90a6a', class: 'slug text-colour-' + this.slugColour }, this.slug), h("h1", { key: '428349e4fcf59f041e45108053abc7b014b7572b', class: mainTitleClasses }, this.mainTitle), h("div", { key: '5242aaba3d2acef327702a698eac9381287d0d75', class: teaserClasses }, this.teaser), this.buttonLabel != null && this.buttonUrl != null
26
+ return (h("div", { key: '318361bdde2d849eb74a93dcdd6a6ac5ec79c3d0', class: 'container colour-scheme-' + this.colourScheme + ' space-below-' + this.spaceBelow }, h("div", { key: 'e04b69726d92c03a01f095f7fa99990039bf2a9e', class: "sleeve" }, h("div", { key: '309ad6bd04d40933127f32bb29e07e74f3f366a5', class: "content-wrap" }, this.logo !== undefined && this.logo !== null ? (h("div", { class: 'logo image-wrap logo-height-' + this.logoHeight }, h("img", { src: this.logo, alt: this.logoAltText, title: this.logoAltText }))) : h("div", { class: 'logo-space logo-height-' + this.logoHeight }), h("div", { key: '45ed48865a54a8145d76c79b52982b9f9c410b2b', class: 'slug text-colour-' + this.slugColour }, this.slug), h("h1", { key: '58d9ad8280b4ded0b2ede6d6a3db0dbf7e11b06d', class: mainTitleClasses }, this.mainTitle), h("div", { key: '897cd01c36c7951a79b130c6926a4353cb7a898f', class: teaserClasses }, this.teaser), this.buttonLabel != null && this.buttonUrl != null
27
27
  ? h("biggive-button", { "colour-scheme": this.buttonColourScheme, url: this.buttonUrl, label: this.buttonLabel })
28
- : null), h("div", { key: '2eb42322a067289c5bc9e0ad268897d3b24d0252', class: "graphic-wrap" }, this.mainImage !== null ? (h("div", { class: "image-wrap", role: "presentation", style: { 'background-image': 'url(' + this.mainImage + ')', 'background-position': this.mainImageAlignHorizontal + ' ' + this.mainImageAlignVertical } })) : null))));
28
+ : null), h("div", { key: 'f4bfb4b0b690120683e15a7e3923c14def6dd14d', class: "graphic-wrap" }, this.mainImage !== null ? (h("div", { class: "image-wrap", role: "presentation", style: { 'background-image': 'url(' + this.mainImage + ')', 'background-position': this.mainImageAlignHorizontal + ' ' + this.mainImageAlignVertical } })) : null))));
29
29
  }
30
30
  static get is() { return "biggive-hero-image"; }
31
31
  static get encapsulation() { return "shadow"; }
@@ -23,7 +23,7 @@ export class BiggiveIconButton {
23
23
  this.buttonId = undefined;
24
24
  }
25
25
  render() {
26
- return (h("div", { key: '32725bfd0c04c24eb09c32bfeab6364c0c6d25e0', class: 'container space-below-' +
26
+ return (h("div", { key: '4b4762c003d3b76b3a9af90fa1a7c1cbf187a8df', class: 'container space-below-' +
27
27
  this.spaceBelow +
28
28
  ' background-colour-' +
29
29
  this.backgroundColour +
@@ -34,7 +34,7 @@ export class BiggiveIconButton {
34
34
  ' rounded-' +
35
35
  this.rounded +
36
36
  ' shadow-' +
37
- this.shadow }, h("a", { key: 'cbab52df37e5f8f78a1e385e19ca73f89aae0a57', href: this.url, target: this.openInNewTab ? '_blank' : '_self', id: this.buttonId }, h("div", { key: '4b7366f3d3dc52fea6e9626e7e35c75714107bde', class: "sleeve", onClick: this.handleButtonClick }, h("div", { key: 'f17a068048e0a6908651a8d289c87146b4401774', class: 'icon-wrap ' + ' size-' + this.size + ' circle-' + this.circle.toString() }, h("biggive-generic-icon", { key: 'f2e146e9ffdc4f199255da6db6b70a3b783843b4', iconGroup: this.iconGroup, icon: this.icon })), this.text != '' ? h("div", { class: 'text-wrap text-colour-' + this.textColour + ' text-padding-' + this.backgroundPadding }, this.text) : null, this.arrow ? (h("div", { class: 'arrow-wrap arrow-colour-' + this.arrowColour }, h("svg", { width: "8", height: "12", viewBox: "0 0 8 12", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M0.76912 1.0791L5.73828 6.04826L0.769121 11.0174", stroke: "black", "stroke-width": "2" })))) : null))));
37
+ this.shadow }, h("a", { key: 'ce1a0ce553f91936b394060ec210933fcc25fc12', href: this.url, target: this.openInNewTab ? '_blank' : '_self', id: this.buttonId }, h("div", { key: '192512c454cc2802e71749411644198938f2eff9', class: "sleeve", onClick: this.handleButtonClick }, h("div", { key: 'bb1077ee0be664448a4df251b1e816cc11b5947a', class: 'icon-wrap ' + ' size-' + this.size + ' circle-' + this.circle.toString() }, h("biggive-generic-icon", { key: '4d48e0f2eab6b1c7b2ce7df690ef4afbbdd57508', iconGroup: this.iconGroup, icon: this.icon })), this.text != '' ? h("div", { class: 'text-wrap text-colour-' + this.textColour + ' text-padding-' + this.backgroundPadding }, this.text) : null, this.arrow ? (h("div", { class: 'arrow-wrap arrow-colour-' + this.arrowColour }, h("svg", { width: "8", height: "12", viewBox: "0 0 8 12", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M0.76912 1.0791L5.73828 6.04826L0.769121 11.0174", stroke: "black", "stroke-width": "2" })))) : null))));
38
38
  }
39
39
  static get is() { return "biggive-icon-button"; }
40
40
  static get encapsulation() { return "shadow"; }
@@ -5,7 +5,7 @@ export class BiggiveIconGroup {
5
5
  this.label = undefined;
6
6
  }
7
7
  render() {
8
- return (h("div", { key: '4f7d0532cdc68cac14a7d2a7f856474cce0ba480', class: 'container space-below-' + this.spaceBelow }, this.label != null ? h("div", { class: "label" }, this.label) : null, h("div", { key: '408c8363fb57cfebb95979bef7a22f47ac5082ad', class: "sleeve" }, h("slot", { key: '21730ee8dedd9e537998f692469d6faaee6cd1eb' }))));
8
+ return (h("div", { key: '8fc91e6ce8f6ac92cf09ea335fc05d438e01f2c4', class: 'container space-below-' + this.spaceBelow }, this.label != null ? h("div", { class: "label" }, this.label) : null, h("div", { key: 'ff1da907f2fb51140002c6077e2bc41163faffb5', class: "sleeve" }, h("slot", { key: '48adf799336e0049bf81cfcd1c80a37940f36e44' }))));
9
9
  }
10
10
  static get is() { return "biggive-icon-group"; }
11
11
  static get encapsulation() { return "shadow"; }
@@ -24,7 +24,7 @@ export class BiggiveImage {
24
24
  return height;
25
25
  }
26
26
  render() {
27
- return (h("div", { key: 'b7a70aa92d6c39e25bfd5b669792f66bfb86002b', class: 'container space-above-' + this.spaceAbove + ' space-below-' + this.spaceBelow, style: { width: this.getWidth(), height: this.getHeight() } }, h("div", { key: 'af42c86d168c9c5e2e77c39816f74f8801b39e53', class: "image-wrap" }, h("img", { key: 'ce77e0d30e0388dc6b4367b4df41153a41e98c24', src: this.imageUrl, style: { width: this.getWidth(), height: this.getHeight() }, alt: this.imageAltText }))));
27
+ return (h("div", { key: '71d6ece0801403b110e40ba4ff836610f281a320', class: 'container space-above-' + this.spaceAbove + ' space-below-' + this.spaceBelow, style: { width: this.getWidth(), height: this.getHeight() } }, h("div", { key: '1777289f1b58fe62defafb7495d7a924079212db', class: "image-wrap" }, h("img", { key: '49bb60a2b41dc0718a8c29651d465decf4763f14', src: this.imageUrl, style: { width: this.getWidth(), height: this.getHeight() }, alt: this.imageAltText }))));
28
28
  }
29
29
  static get is() { return "biggive-image"; }
30
30
  static get encapsulation() { return "shadow"; }
@@ -23,7 +23,7 @@ export class BiggiveImageButton {
23
23
  this.buttonId = undefined;
24
24
  }
25
25
  render() {
26
- return (h("div", { key: '5c3860e8680ba3ec68c368c1983c547f2327bd09', class: 'container space-below-' +
26
+ return (h("div", { key: '704eaebf048d98793e629197fe652bb0b2ca52cf', class: 'container space-below-' +
27
27
  this.spaceBelow +
28
28
  ' background-colour-' +
29
29
  this.backgroundColour +
@@ -34,7 +34,7 @@ export class BiggiveImageButton {
34
34
  ' rounded-' +
35
35
  this.rounded +
36
36
  ' shadow-' +
37
- this.shadow }, h("a", { key: '4815a99c38a24e33cb57f34eb48b2f4151a457f3', href: this.url, target: this.openInNewTab ? '_blank' : '_self', id: this.buttonId }, h("div", { key: 'a62465a9fc390feeebe280029df381b8849c9687', class: "sleeve", onClick: this.handleButtonClick }, h("div", { key: '6b74133671143eea5e898229c866cab13b5090c7', class: 'image-wrap ' + ' image-style-' + this.imageStyle + ' size-' + this.size + ' circle-' + this.circle.toString(), style: { backgroundImage: 'url(' + this.imageUrl + ')' } }), this.text != '' ? h("div", { class: 'text-wrap text-colour-' + this.textColour + ' text-padding-' + this.backgroundPadding }, this.text) : null, this.arrow ? (h("div", { class: 'arrow-wrap arrow-colour-' + this.arrowColour }, h("svg", { width: "8", height: "12", viewBox: "0 0 8 12", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M0.76912 1.0791L5.73828 6.04826L0.769121 11.0174", stroke: "black", "stroke-width": "2" })))) : null))));
37
+ this.shadow }, h("a", { key: '67dc85afccc44ce147a4d87417a63c453f96c641', href: this.url, target: this.openInNewTab ? '_blank' : '_self', id: this.buttonId }, h("div", { key: 'c7241f113e19aaab7af897f84636cdc0e15a85ee', class: "sleeve", onClick: this.handleButtonClick }, h("div", { key: 'f3173549cb15a4247186ac1936b9b06dd9297f98', class: 'image-wrap ' + ' image-style-' + this.imageStyle + ' size-' + this.size + ' circle-' + this.circle.toString(), style: { backgroundImage: 'url(' + this.imageUrl + ')' } }), this.text != '' ? h("div", { class: 'text-wrap text-colour-' + this.textColour + ' text-padding-' + this.backgroundPadding }, this.text) : null, this.arrow ? (h("div", { class: 'arrow-wrap arrow-colour-' + this.arrowColour }, h("svg", { width: "8", height: "12", viewBox: "0 0 8 12", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M0.76912 1.0791L5.73828 6.04826L0.769121 11.0174", stroke: "black", "stroke-width": "2" })))) : null))));
38
38
  }
39
39
  static get is() { return "biggive-image-button"; }
40
40
  static get encapsulation() { return "shadow"; }