@hulkapps/app-manager-vue 1.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.
package/package.json ADDED
@@ -0,0 +1,51 @@
1
+ {
2
+ "name": "@hulkapps/app-manager-vue",
3
+ "version": "1.0.0",
4
+ "description": "Vue SDK to render app manager contents",
5
+ "main": "dist/app-manager-vue.ssr.js",
6
+ "browser": "dist/app-manager-vue.esm.js",
7
+ "module": "dist/app-manager-vue.esm.js",
8
+ "unpkg": "dist/app-manager-vue.min.js",
9
+ "files": [
10
+ "dist/*",
11
+ "src/**/*.vue"
12
+ ],
13
+ "sideEffects": false,
14
+ "scripts": {
15
+ "serve": "vue-cli-service serve dev/serve.js",
16
+ "prebuild": "rimraf ./dist",
17
+ "build": "cross-env NODE_ENV=production rollup --config build/rollup.config.js",
18
+ "build:ssr": "cross-env NODE_ENV=production rollup --config build/rollup.config.js --format cjs",
19
+ "build:es": "cross-env NODE_ENV=production rollup --config build/rollup.config.js --format es",
20
+ "build:unpkg": "cross-env NODE_ENV=production rollup --config build/rollup.config.js --format iife"
21
+ },
22
+ "dependencies": {
23
+ "axios": "^0.26.1"
24
+ },
25
+ "devDependencies": {
26
+ "@babel/core": "^7.14.6",
27
+ "@babel/preset-env": "^7.14.7",
28
+ "@rollup/plugin-alias": "^3.1.2",
29
+ "@rollup/plugin-babel": "^5.3.0",
30
+ "@rollup/plugin-commonjs": "^14.0.0",
31
+ "@rollup/plugin-node-resolve": "^9.0.0",
32
+ "@rollup/plugin-replace": "^2.4.2",
33
+ "@vue/cli-plugin-babel": "^4.5.13",
34
+ "@vue/cli-service": "^4.5.13",
35
+ "@hulkapps/polaris-vue": "^3.0.9",
36
+ "cross-env": "^7.0.3",
37
+ "minimist": "^1.2.5",
38
+ "rimraf": "^3.0.2",
39
+ "rollup": "^2.52.8",
40
+ "rollup-plugin-terser": "^7.0.2",
41
+ "rollup-plugin-vue": "^5.1.9",
42
+ "vue": "^2.6.14",
43
+ "vue-template-compiler": "^2.6.14"
44
+ },
45
+ "peerDependencies": {
46
+ "vue": "^2.6.14"
47
+ },
48
+ "engines": {
49
+ "node": ">=12"
50
+ }
51
+ }
@@ -0,0 +1,66 @@
1
+ <template>
2
+ <PLayoutSection v-if="mappedStaticContentHeaders.length">
3
+ <PBanner
4
+ v-for="(header, key) in mappedStaticContentHeaders" :key="key"
5
+ :id="`static-content-header-${key}`"
6
+ :status="header.status"
7
+ @dismiss="() => dismissBanner(key)"
8
+ >
9
+ <span v-html="header.content"></span>
10
+ </PBanner>
11
+ </PLayoutSection>
12
+ </template>
13
+
14
+ <script>
15
+
16
+ import axios from 'axios'
17
+
18
+ export default {
19
+ name: "Banners",
20
+ props: {
21
+ type: {
22
+ type: String,
23
+ validator(value) {
24
+ return ['header', 'footer'].includes(value)
25
+ },
26
+ default() {
27
+ return 'header'
28
+ }
29
+ }
30
+ },
31
+ data() {
32
+ return {
33
+ dismissedBanners: [],
34
+ staticContent: {}
35
+ }
36
+ },
37
+ computed: {
38
+ mappedStaticContentHeaders: function() {
39
+ const computed = [];
40
+ const banner_type = this.type === 'header' ? 'headers' : 'footers'
41
+
42
+ for(var key in this.staticContent[banner_type]) {
43
+ if(!this.dismissedBanners.includes(parseInt(key))) {
44
+ computed.push(this.staticContent[banner_type][key]);
45
+ }
46
+ }
47
+ return computed;
48
+ }
49
+ },
50
+ methods: {
51
+ dismissBanner(key) {
52
+ this.dismissedBanners.push(key);
53
+ }
54
+ },
55
+ async mounted() {
56
+
57
+ const {data} = await axios.get(`${this.app_manager_config.baseUrl}/api/app-manager/marketing-banners`);
58
+
59
+ this.staticContent = data.banners
60
+ }
61
+ }
62
+ </script>
63
+
64
+ <style scoped>
65
+
66
+ </style>