@postnord/pn-marketweb-components 2.0.102 → 2.0.104

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 (76) hide show
  1. package/cjs/loader.cjs.js +1 -1
  2. package/cjs/pn-breakpoints.cjs.entry.js +28 -0
  3. package/cjs/pn-market-web-components.cjs.js +1 -1
  4. package/cjs/pn-parcel-tracker.cjs.entry.js +30 -0
  5. package/cjs/pn-quick-cta.cjs.entry.js +22 -0
  6. package/cjs/pn-site-footer_2.cjs.entry.js +1 -1
  7. package/cjs/pn-spotlight.cjs.entry.js +22 -0
  8. package/cjs/pn-stats-info.cjs.entry.js +1 -1
  9. package/cjs/pn-teaser-card.cjs.entry.js +6 -2
  10. package/collection/collection-manifest.json +4 -0
  11. package/collection/components/cards/pn-teaser-card/pn-teaser-card.css +11 -1
  12. package/collection/components/cards/pn-teaser-card/pn-teaser-card.js +11 -4
  13. package/collection/components/cards/pn-teaser-card/pn-teaser-card.stories.js +2 -2
  14. package/collection/components/cta/pn-parcel-tracker/pn-parcel-tracker.css +55 -0
  15. package/collection/components/cta/pn-parcel-tracker/pn-parcel-tracker.js +151 -0
  16. package/collection/components/cta/pn-parcel-tracker/pn-parcel-tracker.stories.js +71 -0
  17. package/collection/components/cta/pn-quick-cta/pn-quick-cta.css +41 -0
  18. package/collection/components/cta/pn-quick-cta/pn-quick-cta.js +60 -0
  19. package/collection/components/cta/pn-quick-cta/pn-quick-cta.stories.js +59 -0
  20. package/collection/components/cta/pn-spotlight/pn-spotlight.css +103 -0
  21. package/collection/components/cta/pn-spotlight/pn-spotlight.js +62 -0
  22. package/collection/components/cta/pn-spotlight/pn-spotlight.stories.js +54 -0
  23. package/collection/components/data-visualization/pn-stats-info/pn-stats-info.css +0 -2
  24. package/collection/components/navigation/pn-site-footer/pn-site-footer.css +3 -0
  25. package/collection/components/utilities/pn-breakpoints/pn-breakpoints.css +72 -0
  26. package/collection/components/utilities/pn-breakpoints/pn-breakpoints.js +58 -0
  27. package/custom-elements/index.d.ts +24 -0
  28. package/custom-elements/index.js +96 -6
  29. package/esm/loader.js +1 -1
  30. package/esm/pn-breakpoints.entry.js +24 -0
  31. package/esm/pn-market-web-components.js +1 -1
  32. package/esm/pn-parcel-tracker.entry.js +26 -0
  33. package/esm/pn-quick-cta.entry.js +18 -0
  34. package/esm/pn-site-footer_2.entry.js +1 -1
  35. package/esm/pn-spotlight.entry.js +18 -0
  36. package/esm/pn-stats-info.entry.js +1 -1
  37. package/esm/pn-teaser-card.entry.js +6 -2
  38. package/esm-es5/loader.js +1 -1
  39. package/esm-es5/pn-breakpoints.entry.js +1 -0
  40. package/esm-es5/pn-market-web-components.js +1 -1
  41. package/esm-es5/pn-parcel-tracker.entry.js +1 -0
  42. package/esm-es5/pn-quick-cta.entry.js +1 -0
  43. package/esm-es5/pn-site-footer_2.entry.js +1 -1
  44. package/esm-es5/pn-spotlight.entry.js +1 -0
  45. package/esm-es5/pn-stats-info.entry.js +1 -1
  46. package/esm-es5/pn-teaser-card.entry.js +1 -1
  47. package/package.json +1 -1
  48. package/pn-market-web-components/p-08c6f817.entry.js +1 -0
  49. package/pn-market-web-components/p-08ea20b0.system.entry.js +1 -0
  50. package/pn-market-web-components/p-447ef543.system.entry.js +1 -0
  51. package/pn-market-web-components/p-489412d3.entry.js +1 -0
  52. package/pn-market-web-components/{p-bc99f2db.entry.js → p-5e3a007c.entry.js} +1 -1
  53. package/pn-market-web-components/p-65fef4e8.entry.js +1 -0
  54. package/pn-market-web-components/p-67887512.system.js +1 -1
  55. package/pn-market-web-components/p-8bb1a8f9.system.entry.js +1 -0
  56. package/pn-market-web-components/p-910eb3c2.entry.js +1 -0
  57. package/pn-market-web-components/p-95d13488.system.entry.js +1 -0
  58. package/pn-market-web-components/p-9854fc3d.system.entry.js +1 -0
  59. package/pn-market-web-components/p-a2469aa9.entry.js +1 -0
  60. package/pn-market-web-components/p-d7e3d918.entry.js +1 -0
  61. package/pn-market-web-components/p-e0a7ab9e.system.entry.js +1 -0
  62. package/pn-market-web-components/p-e6702d02.system.entry.js +1 -0
  63. package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
  64. package/types/components/cards/pn-teaser-card/pn-teaser-card.d.ts +2 -0
  65. package/types/components/cta/pn-parcel-tracker/pn-parcel-tracker.d.ts +12 -0
  66. package/types/components/cta/pn-quick-cta/pn-quick-cta.d.ts +6 -0
  67. package/types/components/cta/pn-spotlight/pn-spotlight.d.ts +6 -0
  68. package/types/components/utilities/pn-breakpoints/pn-breakpoints.d.ts +8 -0
  69. package/types/components.d.ts +74 -0
  70. package/umd/pn-marketweb-init.js +1 -1
  71. package/umd/pn-marketweb-salesforce.js +2 -2
  72. package/pn-market-web-components/p-29b86818.system.entry.js +0 -1
  73. package/pn-market-web-components/p-89e47f9e.system.entry.js +0 -1
  74. package/pn-market-web-components/p-d29c9c5d.entry.js +0 -1
  75. package/pn-market-web-components/p-d943f88e.entry.js +0 -1
  76. package/pn-market-web-components/p-db6984c0.system.entry.js +0 -1
@@ -0,0 +1,151 @@
1
+ import { Component, Element, h, Host, Listen, Prop, State, } from '@stencil/core';
2
+ export class PnSpotlight {
3
+ constructor() {
4
+ this.formActionUrl = null;
5
+ this.heading = 'Track your parcel';
6
+ this.buttonLabel = null;
7
+ this.locale = 'en';
8
+ this.placeholder = 'Enter shipment ID';
9
+ this.inputName = 'shipmentID';
10
+ this.currentWidth = window.innerWidth;
11
+ }
12
+ handleViewportSizeChange(event) {
13
+ this.currentWidth = event.target.innerWidth;
14
+ }
15
+ render() {
16
+ return (h(Host, null,
17
+ h("div", { class: "pn-parcel-tracker__container" },
18
+ h("form", { method: "GET", action: this.formActionUrl },
19
+ h("h3", { class: "pn-parcel-tracker__container__heading" }, this.heading),
20
+ h("pn-marketweb-input", { name: this.inputName, placeholder: this.placeholder }),
21
+ h("pn-button", { type: "submit", icon: "search", "icon-only": this.currentWidth < 412 }, this.currentWidth >= 412 && this.buttonLabel)))));
22
+ }
23
+ static get is() { return "pn-parcel-tracker"; }
24
+ static get originalStyleUrls() { return {
25
+ "$": ["pn-parcel-tracker.scss"]
26
+ }; }
27
+ static get styleUrls() { return {
28
+ "$": ["pn-parcel-tracker.css"]
29
+ }; }
30
+ static get properties() { return {
31
+ "formActionUrl": {
32
+ "type": "string",
33
+ "mutable": false,
34
+ "complexType": {
35
+ "original": "string",
36
+ "resolved": "string",
37
+ "references": {}
38
+ },
39
+ "required": false,
40
+ "optional": false,
41
+ "docs": {
42
+ "tags": [],
43
+ "text": ""
44
+ },
45
+ "attribute": "form-action-url",
46
+ "reflect": false,
47
+ "defaultValue": "null"
48
+ },
49
+ "heading": {
50
+ "type": "string",
51
+ "mutable": false,
52
+ "complexType": {
53
+ "original": "string",
54
+ "resolved": "string",
55
+ "references": {}
56
+ },
57
+ "required": false,
58
+ "optional": false,
59
+ "docs": {
60
+ "tags": [],
61
+ "text": ""
62
+ },
63
+ "attribute": "heading",
64
+ "reflect": false,
65
+ "defaultValue": "'Track your parcel'"
66
+ },
67
+ "buttonLabel": {
68
+ "type": "string",
69
+ "mutable": false,
70
+ "complexType": {
71
+ "original": "string",
72
+ "resolved": "string",
73
+ "references": {}
74
+ },
75
+ "required": false,
76
+ "optional": false,
77
+ "docs": {
78
+ "tags": [],
79
+ "text": ""
80
+ },
81
+ "attribute": "button-label",
82
+ "reflect": false,
83
+ "defaultValue": "null"
84
+ },
85
+ "locale": {
86
+ "type": "string",
87
+ "mutable": false,
88
+ "complexType": {
89
+ "original": "string",
90
+ "resolved": "string",
91
+ "references": {}
92
+ },
93
+ "required": false,
94
+ "optional": false,
95
+ "docs": {
96
+ "tags": [],
97
+ "text": ""
98
+ },
99
+ "attribute": "locale",
100
+ "reflect": false,
101
+ "defaultValue": "'en'"
102
+ },
103
+ "placeholder": {
104
+ "type": "string",
105
+ "mutable": false,
106
+ "complexType": {
107
+ "original": "string",
108
+ "resolved": "string",
109
+ "references": {}
110
+ },
111
+ "required": false,
112
+ "optional": false,
113
+ "docs": {
114
+ "tags": [],
115
+ "text": ""
116
+ },
117
+ "attribute": "placeholder",
118
+ "reflect": false,
119
+ "defaultValue": "'Enter shipment ID'"
120
+ },
121
+ "inputName": {
122
+ "type": "string",
123
+ "mutable": false,
124
+ "complexType": {
125
+ "original": "string",
126
+ "resolved": "string",
127
+ "references": {}
128
+ },
129
+ "required": false,
130
+ "optional": false,
131
+ "docs": {
132
+ "tags": [],
133
+ "text": ""
134
+ },
135
+ "attribute": "input-name",
136
+ "reflect": false,
137
+ "defaultValue": "'shipmentID'"
138
+ }
139
+ }; }
140
+ static get states() { return {
141
+ "currentWidth": {}
142
+ }; }
143
+ static get elementRef() { return "hostElement"; }
144
+ static get listeners() { return [{
145
+ "name": "resize",
146
+ "method": "handleViewportSizeChange",
147
+ "target": "window",
148
+ "capture": false,
149
+ "passive": true
150
+ }]; }
151
+ }
@@ -0,0 +1,71 @@
1
+ import readme from './readme.md';
2
+
3
+ export default {
4
+ title: 'CTA/Parcel tracker',
5
+ parameters: {
6
+ notes: readme,
7
+ layout: 'fullscreen',
8
+ },
9
+ };
10
+
11
+ const TemplatePrimary = ({ data, ...args }) => {
12
+ return `
13
+ <pn-breakpoints break-point-class="dotcom"></pn-breakpoints>
14
+ <div id="container" style="margin: 0 auto;">
15
+ <pn-spotlight data-cta-color="blue">
16
+ <h2 slot="mobile-heading">${data[0].heading}</h2>
17
+ <div slot="content">
18
+ <pn-parcel-tracker form-action-url="${data[0].actionUrl}" placeholder="${data[0].placeholder}" heading="${data[0].heading}" button-label="${data[0].buttonLabel}" />
19
+ </div>
20
+ </pn-spotlight>
21
+ </div>
22
+ <br />
23
+
24
+ <div id="container" style="margin: 0 auto;">
25
+ <pn-spotlight data-cta-color="coral">
26
+ <h2 slot="mobile-heading">${data[1].heading}</h2>
27
+ <div slot="content">
28
+ <pn-parcel-tracker form-action-url="${data[1].actionUrl}" placeholder="${data[1].placeholder}"heading="${data[1].heading}" button-label="${data[1].buttonLabel}" />
29
+ </div>
30
+ </pn-spotlight>
31
+ </div>
32
+
33
+ <br/>
34
+
35
+ <div id="container" style="margin: 0 auto;">
36
+ <pn-spotlight data-cta-color="green">
37
+ <h2 slot="mobile-heading">${data[2].heading}</h2>
38
+ <div slot="content">
39
+ <pn-parcel-tracker form-action-url="${data[2].actionUrl}" placeholder="${data[2].placeholder}" heading="${data[2].heading}" button-label="${data[2].buttonLabel}" />
40
+ </div>
41
+ </pn-spotlight>
42
+ </div>`;
43
+ };
44
+
45
+ export const Primary = TemplatePrimary.bind({});
46
+
47
+ Primary.args = {
48
+ data: [
49
+ {
50
+ heading: 'Spåra din försändelse',
51
+ actionUrl: 'https://se-integration.postnord.com/vara-verktyg/spara-brev-paket-och-pall',
52
+ buttonLabel: 'Spåra',
53
+ locale: 'sv',
54
+ placeholder: 'Försändelse-ID',
55
+ },
56
+ {
57
+ heading: 'Track your parcel',
58
+ actionUrl: 'https://com-integration.postnord.com/vara-verktyg/spara-brev-paket-och-pall',
59
+ buttonLabel: 'Track',
60
+ locale: 'en',
61
+ placeholder: 'Enter shipment ID',
62
+ },
63
+ {
64
+ heading: 'Spor din pakke',
65
+ actionUrl: 'https://no-integration.postnord.com/pakkesporing',
66
+ buttonLabel: 'Spor',
67
+ locale: 'no',
68
+ placeholder: 'Sendningsnummer',
69
+ },
70
+ ],
71
+ };
@@ -0,0 +1,41 @@
1
+ pn-quick-cta {
2
+ width: 100%;
3
+ }
4
+ pn-quick-cta .quick-cta__content {
5
+ display: flex;
6
+ flex-direction: row;
7
+ align-items: center;
8
+ justify-content: flex-end;
9
+ gap: 2.4rem;
10
+ width: 100%;
11
+ }
12
+ pn-quick-cta .quick-cta__content .quick-cta__content__heading {
13
+ padding: 0;
14
+ margin: 0;
15
+ font-size: 2.4rem;
16
+ font-weight: 500;
17
+ }
18
+ @media screen and (max-width: 768px) {
19
+ pn-quick-cta .quick-cta__content .quick-cta__content__heading {
20
+ display: none;
21
+ }
22
+ }
23
+ @media screen and (min-width: 1640px) {
24
+ pn-quick-cta .quick-cta__content .quick-cta__content__heading {
25
+ font-size: 2.8rem;
26
+ font-weight: 700;
27
+ }
28
+ }
29
+ pn-quick-cta .quick-cta__content .quick-cta__content__preamble {
30
+ font-weight: 400;
31
+ font-size: 1.6rem;
32
+ line-height: 140%;
33
+ padding: 0;
34
+ margin: 0;
35
+ }
36
+ pn-quick-cta .quick-cta__content [slot=quick-cta-cta] a {
37
+ white-space: nowrap;
38
+ }
39
+ pn-quick-cta .quick-cta__content [slot=quick-cta-cta] a:hover {
40
+ text-decoration: none;
41
+ }
@@ -0,0 +1,60 @@
1
+ import { Component, Element, h, Host, Prop, } from '@stencil/core';
2
+ export class PnQuickCta {
3
+ constructor() {
4
+ this.heading = null;
5
+ this.preamble = null;
6
+ }
7
+ render() {
8
+ return (h(Host, null,
9
+ h("div", { class: "quick-cta__content" },
10
+ h("h2", { class: "quick-cta__content__heading" }, this.heading),
11
+ h("p", { class: "quick-cta__content__preamble" }, this.preamble),
12
+ h("slot", { name: "quick-cta-cta" }))));
13
+ }
14
+ static get is() { return "pn-quick-cta"; }
15
+ static get originalStyleUrls() { return {
16
+ "$": ["pn-quick-cta.scss"]
17
+ }; }
18
+ static get styleUrls() { return {
19
+ "$": ["pn-quick-cta.css"]
20
+ }; }
21
+ static get properties() { return {
22
+ "heading": {
23
+ "type": "string",
24
+ "mutable": false,
25
+ "complexType": {
26
+ "original": "string",
27
+ "resolved": "string",
28
+ "references": {}
29
+ },
30
+ "required": false,
31
+ "optional": false,
32
+ "docs": {
33
+ "tags": [],
34
+ "text": ""
35
+ },
36
+ "attribute": "heading",
37
+ "reflect": false,
38
+ "defaultValue": "null"
39
+ },
40
+ "preamble": {
41
+ "type": "string",
42
+ "mutable": false,
43
+ "complexType": {
44
+ "original": "string",
45
+ "resolved": "string",
46
+ "references": {}
47
+ },
48
+ "required": false,
49
+ "optional": false,
50
+ "docs": {
51
+ "tags": [],
52
+ "text": ""
53
+ },
54
+ "attribute": "preamble",
55
+ "reflect": false,
56
+ "defaultValue": "null"
57
+ }
58
+ }; }
59
+ static get elementRef() { return "hostElement"; }
60
+ }
@@ -0,0 +1,59 @@
1
+ import readme from './readme.md';
2
+
3
+ export default {
4
+ title: 'CTA/Quick CTA',
5
+ parameters: {
6
+ notes: readme,
7
+ layout: 'fullscreen',
8
+ },
9
+ };
10
+
11
+ const TemplatePrimary = ({ ...args }) => {
12
+ return `
13
+ <pn-breakpoints break-point-class="dotcom"></pn-breakpoints>
14
+ <div id="container" style="margin: 0 auto;">
15
+ <pn-spotlight data-cta-color="blue">
16
+ <h2 slot="mobile-heading">${args.heading}</h2>
17
+ <div slot="content">
18
+ <pn-quick-cta heading="${args.heading}" preamble="${args.preamble}">
19
+ <pn-button slot="quick-cta-cta" href="${args.ctaUrl}">${args.ctaLabel}</pn-button>
20
+ </pn-quick-cta>
21
+ </div>
22
+ </pn-spotlight>
23
+ </div>
24
+
25
+ <br/>
26
+
27
+ <div id="container" style="margin: 0 auto;">
28
+ <pn-spotlight data-cta-color="coral">
29
+ <h2 slot="mobile-heading">${args.heading}</h2>
30
+ <div slot="content">
31
+ <pn-quick-cta heading="${args.heading}" preamble="${args.preamble}">
32
+ <pn-button slot="quick-cta-cta" href="${args.ctaUrl}">${args.ctaLabel}</pn-button>
33
+ </pn-quick-cta>
34
+ </div>
35
+ </pn-spotlight>
36
+ </div>
37
+
38
+ <br />
39
+
40
+ <div id="container" style="margin: 0 auto;">
41
+ <pn-spotlight data-cta-color="green">
42
+ <h2 slot="mobile-heading">${args.heading}</h2>
43
+ <div slot="content">
44
+ <pn-quick-cta heading="${args.heading}" preamble="${args.preamble}">
45
+ <pn-button slot="quick-cta-cta" href="${args.ctaUrl}">${args.ctaLabel}</pn-button>
46
+ </pn-quick-cta>
47
+ </div>
48
+ </pn-spotlight>
49
+ </div> `;
50
+ };
51
+
52
+ export const Primary = TemplatePrimary.bind({});
53
+
54
+ Primary.args = {
55
+ heading: 'Interested in sustainable shipping?',
56
+ preamble: 'Talk with our experts',
57
+ ctaUrl: 'http://www.google.se',
58
+ ctaLabel: 'Read more',
59
+ };
@@ -0,0 +1,103 @@
1
+ pn-spotlight .pn-spotlight__container {
2
+ overflow: hidden;
3
+ }
4
+ @media screen and (max-width: 991px) {
5
+ pn-spotlight .pn-spotlight__container {
6
+ margin-left: calc(-50vw + 50%);
7
+ margin-right: calc(-50vw + 50%);
8
+ }
9
+ }
10
+ pn-spotlight [slot=mobile-heading] {
11
+ text-align: center;
12
+ padding-bottom: 1.6rem;
13
+ font-weight: 500;
14
+ }
15
+ @media screen and (min-width: 769px) {
16
+ pn-spotlight [slot=mobile-heading] {
17
+ display: none;
18
+ }
19
+ }
20
+ pn-spotlight .pn-spotlight__container__wrapper {
21
+ position: relative;
22
+ max-width: 100%;
23
+ }
24
+ @media screen and (min-width: 992px) {
25
+ pn-spotlight .pn-spotlight__container__wrapper {
26
+ max-width: 90%;
27
+ margin: 0 auto;
28
+ }
29
+ }
30
+ @media screen and (min-width: 1640px) {
31
+ pn-spotlight .pn-spotlight__container__wrapper {
32
+ max-width: 80%;
33
+ }
34
+ }
35
+ pn-spotlight .pn-spotlight__container__wrapper__content {
36
+ position: relative;
37
+ margin: 0 auto;
38
+ display: flex;
39
+ flex-direction: row;
40
+ left: -57.5px;
41
+ width: calc(100% + 57.5px);
42
+ }
43
+ @media screen and (min-width: 768px) {
44
+ pn-spotlight .pn-spotlight__container__wrapper__content {
45
+ left: -50px;
46
+ width: calc(100% + 50px);
47
+ }
48
+ }
49
+ @media screen and (min-width: 992px) {
50
+ pn-spotlight .pn-spotlight__container__wrapper__content {
51
+ left: 0;
52
+ width: 100%;
53
+ }
54
+ }
55
+ pn-spotlight .pn-spotlight__container__wrapper__content__ball {
56
+ border-radius: 50%;
57
+ min-height: 75px;
58
+ aspect-ratio: 1/1;
59
+ margin-right: 1.5rem;
60
+ }
61
+ @media screen and (min-width: 768px) {
62
+ pn-spotlight .pn-spotlight__container__wrapper__content__ball {
63
+ min-height: 85px;
64
+ margin-right: 2.5rem;
65
+ }
66
+ }
67
+ pn-spotlight [slot=content] {
68
+ display: flex;
69
+ border-top-left-radius: 10rem;
70
+ border-bottom-left-radius: 10rem;
71
+ align-items: center;
72
+ justify-content: right;
73
+ padding: 0 1.5rem;
74
+ padding-left: 50px;
75
+ width: 100%;
76
+ }
77
+ @media screen and (min-width: 992px) {
78
+ pn-spotlight [slot=content] {
79
+ padding: 0 2rem;
80
+ border-radius: 10rem;
81
+ }
82
+ }
83
+
84
+ pn-spotlight[data-cta-color=green] [slot=content] {
85
+ background-color: #DCF6E7;
86
+ }
87
+ pn-spotlight[data-cta-color=green] .pn-spotlight__container__wrapper__content__ball {
88
+ background-color: #DCF6E7;
89
+ }
90
+
91
+ pn-spotlight[data-cta-color=coral] [slot=content] {
92
+ background-color: #FDEFEE;
93
+ }
94
+ pn-spotlight[data-cta-color=coral] .pn-spotlight__container__wrapper__content__ball {
95
+ background-color: #FDEFEE;
96
+ }
97
+
98
+ pn-spotlight[data-cta-color=blue] [slot=content] {
99
+ background-color: #EFFBFF;
100
+ }
101
+ pn-spotlight[data-cta-color=blue] .pn-spotlight__container__wrapper__content__ball {
102
+ background-color: #EFFBFF;
103
+ }
@@ -0,0 +1,62 @@
1
+ import { Component, Element, h, Host, Prop, } from '@stencil/core';
2
+ export class PnSpotlight {
3
+ constructor() {
4
+ this.heading = null;
5
+ this.preamble = null;
6
+ }
7
+ render() {
8
+ return (h(Host, null,
9
+ h("div", { class: "pn-spotlight__container" },
10
+ h("slot", { name: "mobile-heading" }),
11
+ h("div", { class: "pn-spotlight__container__wrapper" },
12
+ h("div", { class: "pn-spotlight__container__wrapper__content" },
13
+ h("div", { class: "pn-spotlight__container__wrapper__content__ball" }),
14
+ h("slot", { name: "content" }))))));
15
+ }
16
+ static get is() { return "pn-spotlight"; }
17
+ static get originalStyleUrls() { return {
18
+ "$": ["pn-spotlight.scss"]
19
+ }; }
20
+ static get styleUrls() { return {
21
+ "$": ["pn-spotlight.css"]
22
+ }; }
23
+ static get properties() { return {
24
+ "heading": {
25
+ "type": "string",
26
+ "mutable": false,
27
+ "complexType": {
28
+ "original": "string",
29
+ "resolved": "string",
30
+ "references": {}
31
+ },
32
+ "required": false,
33
+ "optional": false,
34
+ "docs": {
35
+ "tags": [],
36
+ "text": ""
37
+ },
38
+ "attribute": "heading",
39
+ "reflect": false,
40
+ "defaultValue": "null"
41
+ },
42
+ "preamble": {
43
+ "type": "string",
44
+ "mutable": false,
45
+ "complexType": {
46
+ "original": "string",
47
+ "resolved": "string",
48
+ "references": {}
49
+ },
50
+ "required": false,
51
+ "optional": false,
52
+ "docs": {
53
+ "tags": [],
54
+ "text": ""
55
+ },
56
+ "attribute": "preamble",
57
+ "reflect": false,
58
+ "defaultValue": "null"
59
+ }
60
+ }; }
61
+ static get elementRef() { return "hostElement"; }
62
+ }
@@ -0,0 +1,54 @@
1
+ import readme from './readme.md';
2
+
3
+ export default {
4
+ title: 'CTA/Spotlight',
5
+ parameters: {
6
+ notes: readme,
7
+ layout: 'fullscreen',
8
+ },
9
+ };
10
+
11
+ const TemplatePrimary = ({ ...args }) => {
12
+ return `
13
+ <pn-breakpoints break-point-class="dotcom"></pn-breakpoints>
14
+ <div id="container" style="margin: 0 auto;">
15
+ <pn-spotlight data-cta-color="blue">
16
+ <h2 slot="mobile-heading">${args.heading}</h2>
17
+ <div slot="content">
18
+
19
+ </div>
20
+ </pn-spotlight>
21
+ </div>
22
+
23
+ <br/>
24
+
25
+ <div id="container" style="margin: 0 auto;">
26
+ <pn-spotlight data-cta-color="coral">
27
+ <h2 slot="mobile-heading">${args.heading}</h2>
28
+ <div slot="content">
29
+
30
+ </div>
31
+ </pn-spotlight>
32
+ </div>
33
+
34
+ <br />
35
+
36
+ <div id="container" style="margin: 0 auto;">
37
+ <pn-spotlight data-cta-color="green">
38
+ <h2 slot="mobile-heading">${args.heading}</h2>
39
+ <div slot="content">
40
+
41
+ </div>
42
+ </pn-spotlight>
43
+ </div>
44
+ `;
45
+ };
46
+
47
+ export const Primary = TemplatePrimary.bind({});
48
+
49
+ Primary.args = {
50
+ heading: 'A Spotlight Moble Header',
51
+ preamble: 'With quick-cta component as content',
52
+ ctaUrl: 'http://www.google.se',
53
+ ctaLabel: 'Read more',
54
+ };
@@ -1,6 +1,4 @@
1
1
  .bleed-container:has(pn-stats-info) {
2
- border-bottom-left-radius: 2.4rem;
3
- border-bottom-right-radius: 2.4rem;
4
2
  padding: 0;
5
3
  margin-bottom: 3rem;
6
4
  overflow: hidden;
@@ -101,6 +101,9 @@ pn-site-footer[theme=dotcom] > svg path {
101
101
  }
102
102
  pn-site-footer[theme=dotcom] .pn-sitefooter-top {
103
103
  width: 100%;
104
+ position: relative;
105
+ top: -1px;
106
+ background-color: #0D234B;
104
107
  }
105
108
  pn-site-footer[theme=dotcom] .pn-sitefooter-top .pn-sitefooter-cols {
106
109
  display: flex;
@@ -0,0 +1,72 @@
1
+ pn-breakpoints {
2
+ width: 100%;
3
+ }
4
+ pn-breakpoints .breakpoints--dotcom {
5
+ width: 100%;
6
+ background-color: aliceblue;
7
+ text-align: center;
8
+ margin-bottom: 2.4rem;
9
+ background-color: aliceblue;
10
+ }
11
+ pn-breakpoints .breakpoints--dotcom .reference::before {
12
+ content: "less than 321";
13
+ }
14
+ @media screen and (min-width: 321px) {
15
+ pn-breakpoints .breakpoints--dotcom {
16
+ background-color: yellow;
17
+ }
18
+ pn-breakpoints .breakpoints--dotcom .reference::before {
19
+ content: "321 (xs)";
20
+ }
21
+ }
22
+ @media screen and (min-width: 576px) {
23
+ pn-breakpoints .breakpoints--dotcom {
24
+ background-color: aqua;
25
+ }
26
+ pn-breakpoints .breakpoints--dotcom .reference::before {
27
+ content: "576 (sm)";
28
+ }
29
+ }
30
+ @media screen and (min-width: 768px) {
31
+ pn-breakpoints .breakpoints--dotcom {
32
+ background-color: red;
33
+ color: #fff;
34
+ }
35
+ pn-breakpoints .breakpoints--dotcom .reference::before {
36
+ content: "768 (md)";
37
+ }
38
+ }
39
+ @media screen and (min-width: 992px) {
40
+ pn-breakpoints .breakpoints--dotcom {
41
+ background-color: green;
42
+ color: #fff;
43
+ }
44
+ pn-breakpoints .breakpoints--dotcom .reference::before {
45
+ content: "992 (lg)";
46
+ }
47
+ }
48
+ @media screen and (min-width: 1200px) {
49
+ pn-breakpoints .breakpoints--dotcom {
50
+ background-color: blue;
51
+ color: #fff;
52
+ }
53
+ pn-breakpoints .breakpoints--dotcom .reference::before {
54
+ content: "1200 (xl)";
55
+ }
56
+ }
57
+ @media screen and (min-width: 1640px) {
58
+ pn-breakpoints .breakpoints--dotcom {
59
+ background-color: pink;
60
+ }
61
+ pn-breakpoints .breakpoints--dotcom .reference::before {
62
+ content: "1640 (xxl)";
63
+ }
64
+ }
65
+ @media screen and (min-width: 1920px) {
66
+ pn-breakpoints .breakpoints--dotcom {
67
+ background-color: orange;
68
+ }
69
+ pn-breakpoints .breakpoints--dotcom .reference::before {
70
+ content: "1920 (fhd)";
71
+ }
72
+ }