hemfixarna-web-components 1.8.4 → 1.8.7
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/dist/cjs/hemfixarna-address_15.cjs.entry.js +7 -7
- package/dist/cjs/hemfixarna-address_15.cjs.entry.js.map +1 -1
- package/dist/cjs/hemfixarna-byggmax.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-category.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-doro.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-elfa.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-fargvaruhuset.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-flyttsmart.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-forebygg.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-hornbach.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-kbygg.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-klint.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-kund.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-norrgavel.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-power.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-service.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-skanska.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-sparfonster.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-string-furniture.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-superfront.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-tesla.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-traningspartner.cjs.entry.js +1 -1
- package/dist/cjs/hemfixarna-zaptec.cjs.entry.js +1 -1
- package/dist/cjs/{index-3e8dcb29.js → index-6cce99a1.js} +4 -5
- package/dist/cjs/index-6cce99a1.js.map +1 -0
- package/dist/cjs/{index-e81df82e.js → index-dc8e80e4.js} +5 -1
- package/dist/cjs/index-dc8e80e4.js.map +1 -0
- package/dist/collection/types/index.js +4 -0
- package/dist/collection/types/index.js.map +1 -1
- package/dist/collection/utils/calc.js +1 -10
- package/dist/collection/utils/calc.js.map +1 -1
- package/dist/esm/hemfixarna-address_15.entry.js +7 -7
- package/dist/esm/hemfixarna-address_15.entry.js.map +1 -1
- package/dist/esm/hemfixarna-byggmax.entry.js +1 -1
- package/dist/esm/hemfixarna-category.entry.js +1 -1
- package/dist/esm/hemfixarna-doro.entry.js +1 -1
- package/dist/esm/hemfixarna-elfa.entry.js +1 -1
- package/dist/esm/hemfixarna-fargvaruhuset.entry.js +1 -1
- package/dist/esm/hemfixarna-flyttsmart.entry.js +1 -1
- package/dist/esm/hemfixarna-forebygg.entry.js +1 -1
- package/dist/esm/hemfixarna-hornbach.entry.js +1 -1
- package/dist/esm/hemfixarna-kbygg.entry.js +1 -1
- package/dist/esm/hemfixarna-klint.entry.js +1 -1
- package/dist/esm/hemfixarna-kund.entry.js +1 -1
- package/dist/esm/hemfixarna-norrgavel.entry.js +1 -1
- package/dist/esm/hemfixarna-power.entry.js +1 -1
- package/dist/esm/hemfixarna-service.entry.js +1 -1
- package/dist/esm/hemfixarna-skanska.entry.js +1 -1
- package/dist/esm/hemfixarna-sparfonster.entry.js +1 -1
- package/dist/esm/hemfixarna-string-furniture.entry.js +1 -1
- package/dist/esm/hemfixarna-superfront.entry.js +1 -1
- package/dist/esm/hemfixarna-tesla.entry.js +1 -1
- package/dist/esm/hemfixarna-traningspartner.entry.js +1 -1
- package/dist/esm/hemfixarna-zaptec.entry.js +1 -1
- package/dist/esm/{index-c8ce6f4b.js → index-17dff2be.js} +5 -1
- package/dist/esm/index-17dff2be.js.map +1 -0
- package/dist/esm/{index-aa51ad9d.js → index-20d4c934.js} +4 -5
- package/dist/esm/index-20d4c934.js.map +1 -0
- package/dist/hemfixarna-components/hemfixarna-components.esm.js +1 -1
- package/dist/hemfixarna-components/p-13c814e5.entry.js +2 -0
- package/dist/hemfixarna-components/{p-d2135574.entry.js → p-22402dcd.entry.js} +2 -2
- package/dist/hemfixarna-components/{p-6f9913cb.entry.js → p-2af882e6.entry.js} +2 -2
- package/dist/hemfixarna-components/p-3038b208.entry.js +2 -0
- package/dist/hemfixarna-components/p-45ab00f1.entry.js +2 -0
- package/dist/hemfixarna-components/{p-a66f910f.entry.js → p-5c9563b4.entry.js} +2 -2
- package/dist/hemfixarna-components/p-6bd272c5.entry.js +2 -0
- package/dist/hemfixarna-components/{p-5cc10f3e.js → p-6e20e1b0.js} +2 -2
- package/dist/hemfixarna-components/p-6e20e1b0.js.map +1 -0
- package/dist/hemfixarna-components/p-7b495586.entry.js +2 -0
- package/dist/hemfixarna-components/{p-e2cd711c.entry.js → p-7c0e45f5.entry.js} +2 -2
- package/dist/hemfixarna-components/{p-80044bef.entry.js → p-7cb8e61f.entry.js} +2 -2
- package/dist/hemfixarna-components/{p-d452b6c8.entry.js → p-7df046a3.entry.js} +2 -2
- package/dist/hemfixarna-components/p-81571614.entry.js +2 -0
- package/dist/hemfixarna-components/{p-d522ece7.entry.js → p-82273497.entry.js} +2 -2
- package/dist/hemfixarna-components/{p-5f8e1f23.entry.js → p-8b7e8357.entry.js} +2 -2
- package/dist/hemfixarna-components/p-9c484473.entry.js +2 -0
- package/dist/hemfixarna-components/{p-dcf4f921.entry.js → p-9cf1fb6b.entry.js} +2 -2
- package/dist/hemfixarna-components/p-b115aec3.entry.js +2 -0
- package/dist/hemfixarna-components/p-b115aec3.entry.js.map +1 -0
- package/dist/hemfixarna-components/p-cdc0d010.js +2 -0
- package/dist/hemfixarna-components/p-cdc0d010.js.map +1 -0
- package/dist/hemfixarna-components/{p-9defa3dc.entry.js → p-de0582a4.entry.js} +2 -2
- package/dist/hemfixarna-components/p-e162b027.entry.js +2 -0
- package/dist/hemfixarna-components/p-ea31b5fc.entry.js +2 -0
- package/dist/hemfixarna-components/{p-cc0920f6.entry.js → p-f9fdaa51.entry.js} +2 -2
- package/dist/hemfixarna-components/p-fe40c699.entry.js +2 -0
- package/dist/types/types/index.d.ts +5 -1
- package/package.json +1 -1
- package/dist/cjs/index-3e8dcb29.js.map +0 -1
- package/dist/cjs/index-e81df82e.js.map +0 -1
- package/dist/esm/index-aa51ad9d.js.map +0 -1
- package/dist/esm/index-c8ce6f4b.js.map +0 -1
- package/dist/hemfixarna-components/p-0106398c.entry.js +0 -2
- package/dist/hemfixarna-components/p-2171ef72.entry.js +0 -2
- package/dist/hemfixarna-components/p-21f904c4.entry.js +0 -2
- package/dist/hemfixarna-components/p-30539ae5.entry.js +0 -2
- package/dist/hemfixarna-components/p-3064ec85.entry.js +0 -2
- package/dist/hemfixarna-components/p-31254a9b.entry.js +0 -2
- package/dist/hemfixarna-components/p-5cc10f3e.js.map +0 -1
- package/dist/hemfixarna-components/p-62fdb014.entry.js +0 -2
- package/dist/hemfixarna-components/p-642db21e.js +0 -2
- package/dist/hemfixarna-components/p-642db21e.js.map +0 -1
- package/dist/hemfixarna-components/p-695b4ab5.entry.js +0 -2
- package/dist/hemfixarna-components/p-695b4ab5.entry.js.map +0 -1
- package/dist/hemfixarna-components/p-b904e94f.entry.js +0 -2
- package/dist/hemfixarna-components/p-d31b9a6e.entry.js +0 -2
- package/dist/hemfixarna-components/p-ff1548ae.entry.js +0 -2
- /package/dist/hemfixarna-components/{p-21f904c4.entry.js.map → p-13c814e5.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-d2135574.entry.js.map → p-22402dcd.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-0106398c.entry.js.map → p-2af882e6.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-31254a9b.entry.js.map → p-3038b208.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-3064ec85.entry.js.map → p-45ab00f1.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-a66f910f.entry.js.map → p-5c9563b4.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-d31b9a6e.entry.js.map → p-6bd272c5.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-62fdb014.entry.js.map → p-7b495586.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-e2cd711c.entry.js.map → p-7c0e45f5.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-80044bef.entry.js.map → p-7cb8e61f.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-d452b6c8.entry.js.map → p-7df046a3.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-6f9913cb.entry.js.map → p-81571614.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-d522ece7.entry.js.map → p-82273497.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-5f8e1f23.entry.js.map → p-8b7e8357.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-2171ef72.entry.js.map → p-9c484473.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-ff1548ae.entry.js.map → p-9cf1fb6b.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-9defa3dc.entry.js.map → p-de0582a4.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-cc0920f6.entry.js.map → p-e162b027.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-dcf4f921.entry.js.map → p-ea31b5fc.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-30539ae5.entry.js.map → p-f9fdaa51.entry.js.map} +0 -0
- /package/dist/hemfixarna-components/{p-b904e94f.entry.js.map → p-fe40c699.entry.js.map} +0 -0
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-6cce99a1.js');
|
7
7
|
|
8
8
|
const HemfixarnaCategory = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-6cce99a1.js');
|
7
7
|
|
8
8
|
const HemfixarnaService = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
const index = require('./index-e6926623.js');
|
6
|
-
const index$1 = require('./index-
|
6
|
+
const index$1 = require('./index-dc8e80e4.js');
|
7
7
|
|
8
8
|
const MyComponent = class {
|
9
9
|
constructor(hostRef) {
|
@@ -38,7 +38,7 @@ const cleanupElements = debounce((map) => {
|
|
38
38
|
for (let key of map.keys()) {
|
39
39
|
map.set(key, map.get(key).filter(isConnected));
|
40
40
|
}
|
41
|
-
},
|
41
|
+
}, 2_000);
|
42
42
|
const stencilSubscription = () => {
|
43
43
|
if (typeof index.getRenderingRef !== 'function') {
|
44
44
|
// If we are not in a stencil project, we do nothing.
|
@@ -71,7 +71,7 @@ const stencilSubscription = () => {
|
|
71
71
|
const unwrap = (val) => (typeof val === 'function' ? val() : val);
|
72
72
|
const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {
|
73
73
|
const unwrappedState = unwrap(defaultState);
|
74
|
-
let states = new Map(Object.entries(unwrappedState
|
74
|
+
let states = new Map(Object.entries(unwrappedState ?? {}));
|
75
75
|
const handlers = {
|
76
76
|
dispose: [],
|
77
77
|
get: [],
|
@@ -79,10 +79,9 @@ const createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) =>
|
|
79
79
|
reset: [],
|
80
80
|
};
|
81
81
|
const reset = () => {
|
82
|
-
var _a;
|
83
82
|
// When resetting the state, the default state may be a function - unwrap it to invoke it.
|
84
83
|
// otherwise, the state won't be properly reset
|
85
|
-
states = new Map(Object.entries(
|
84
|
+
states = new Map(Object.entries(unwrap(defaultState) ?? {}));
|
86
85
|
handlers.reset.forEach((cb) => cb());
|
87
86
|
};
|
88
87
|
const dispose = () => {
|
@@ -262,4 +261,4 @@ onChange('selectedCustomerCategory', category => {
|
|
262
261
|
|
263
262
|
exports.state = state;
|
264
263
|
|
265
|
-
//# sourceMappingURL=index-
|
264
|
+
//# sourceMappingURL=index-6cce99a1.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"file":"index-6cce99a1.js","mappings":"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","names":["getRenderingRef","forceUpdate"],"sources":["./node_modules/@stencil/store/dist/index.js","./src/store/index.ts"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2_000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState ?? {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries(unwrap(defaultState) ?? {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const unSet = on('set', (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n });\n // We need to unwrap the defaultState because it might be a function.\n // Otherwise we might not be sending the right reset value.\n const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));\n return () => {\n unSet();\n unReset();\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { createStore } from '@stencil/store';\nimport { OnChangeHandler } from '@stencil/store/dist/types';\nimport { Business, CartItem, Category, Customer, CustomerCategory, CustomerSubCategory, GreenOptions, Product, RotOptions, RutOptions, Service, User, WpOptions } from '../types';\nimport { CreditSafeUser } from '../types/felixtypes';\n\ntype StateType = {\n step: number;\n selectedCategory: Category | null;\n selectedService: Service | null;\n selectedProduct: Product | null;\n cart: Array<CartItem>;\n business: Business | 'undefined';\n options: WpOptions | null;\n rut: boolean;\n rot: boolean;\n green: boolean;\n token: string | null;\n checkoutStep: number;\n checkoutEdit: boolean;\n user: User | null;\n creditSafeUser: CreditSafeUser | null;\n modal: {\n title?: string;\n text: string;\n } | null;\n rutOptions: RutOptions | null;\n rotOptions: RotOptions | null;\n greenOptions: GreenOptions | null;\n customer: Customer | null;\n selectedCustomerCategory: CustomerCategory | CustomerSubCategory | null;\n parentCategory: CustomerCategory | CustomerSubCategory;\n checkoutInvoice: boolean;\n maleri: boolean;\n selectSource: boolean;\n showSourcePasswordPrompt: boolean;\n};\n\nconst {\n state,\n onChange,\n}: {\n state: StateType;\n onChange: OnChangeHandler<StateType>;\n} = createStore({\n step: 1,\n checkoutStep: 1,\n checkoutEdit: false,\n selectedCategory: null,\n selectedService: null,\n selectedProduct: null,\n cart: [],\n business: 'undefined',\n options: null,\n rut: true,\n rot: true,\n green: true,\n token: null,\n user: null,\n modal: null,\n rutOptions: null,\n rotOptions: null,\n greenOptions: null,\n customer: null,\n selectedCustomerCategory: null,\n parentCategory: null,\n creditSafeUser: null,\n checkoutInvoice: false,\n maleri: false,\n sources: null,\n selectSource: false,\n showSourcePasswordPrompt: false,\n});\n\nonChange('cart', cart => {\n window.sessionStorage.setItem(`hemfixarna-${state.business}-cart`, JSON.stringify(cart));\n});\n\nonChange('user', user => {\n window.sessionStorage.setItem(`hemfixarna-${state.business}-user`, JSON.stringify(user));\n});\n\nonChange('creditSafeUser', user => {\n window.sessionStorage.setItem(`hemfixarna-${state.business}-creditSafeUser`, JSON.stringify(user));\n});\n\nonChange('selectSource', selectSource => {\n if (selectSource) {\n localStorage.setItem('select_source', 'true');\n }\n});\n\nonChange('selectedProduct', product => {\n if (!state.customer || !product) return;\n const categories = [...state.customer.categories, ...state.customer.categories.map(c => c.sub_categories ?? [])].flat();\n const category = categories.find(c => c && c.id === product.category);\n if (category) {\n state.parentCategory = category;\n return;\n }\n state.parentCategory = null;\n});\n\nonChange('selectedCustomerCategory', category => {\n if (!state.customer || !category) return;\n if ((category as CustomerSubCategory).parent) {\n const parent = state.customer.categories.find(c => c.id === (category as CustomerSubCategory).parent);\n if (parent) {\n state.parentCategory = parent;\n return;\n }\n }\n state.parentCategory = null;\n});\n\nexport default state;\n"],"version":3}
|
@@ -33,6 +33,10 @@ exports.Business = void 0;
|
|
33
33
|
Business["byggshop"] = "byggshop";
|
34
34
|
Business["golvshop"] = "golvshop";
|
35
35
|
Business["golvpoolen"] = "golvpoolen";
|
36
|
+
Business["webhallen"] = "webhallen";
|
37
|
+
Business["homeroom"] = "homeroom";
|
38
|
+
Business["pickyliving"] = "picky-living";
|
39
|
+
Business["amina"] = "amina";
|
36
40
|
})(exports.Business || (exports.Business = {}));
|
37
41
|
exports.WidgetStyle = void 0;
|
38
42
|
(function (WidgetStyle) {
|
@@ -46,4 +50,4 @@ var TopCategory;
|
|
46
50
|
TopCategory["byggmax"] = "category/bygg";
|
47
51
|
})(TopCategory || (TopCategory = {}));
|
48
52
|
|
49
|
-
//# sourceMappingURL=index-
|
53
|
+
//# sourceMappingURL=index-dc8e80e4.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"file":"index-dc8e80e4.js","mappings":";;AAAA;AACA;AACA;AAEYA;AAAZ,WAAY,QAAQ;EAClB,yBAAa,CAAA;EACb,+BAAmB,CAAA;EACnB,+BAAmB,CAAA;EACnB,uCAA2B,CAAA;EAC3B,iCAAqB,CAAA;EACrB,iCAAqB,CAAA;EACrB,yBAAa,CAAA;EACb,yBAAa,CAAA;EACb,4BAAgB,CAAA;EAChB,mCAAuB,CAAA;EACvB,2CAA+B,CAAA;EAC/B,6BAAiB,CAAA;EACjB,2BAAe,CAAA;EACf,2BAAe,CAAA;EACf,qCAAyB,CAAA;EACzB,qBAAS,CAAA;EACT,uCAA2B,CAAA;EAC3B,2BAAe,CAAA;EACf,+CAAmC,CAAA;EACnC,qCAAyB,CAAA;EACzB,yBAAa,CAAA;EACb,iCAAqB,CAAA;EACrB,mCAAuB,CAAA;EACvB,mCAAuB,CAAA;EACvB,+BAAmB,CAAA;EACnB,iCAAqB,CAAA;EACrB,iCAAqB,CAAA;EACrB,qCAAyB,CAAA;EACzB,mCAAuB,CAAA;EACvB,iCAAqB,CAAA;EACrB,wCAA4B,CAAA;EAC5B,2BAAe,CAAA;AACjB,CAAC,EAjCWA,gBAAQ,KAARA,gBAAQ,QAiCnB;AAqMWC;AAAZ,WAAY,WAAW;EACrB,oCAAqB,CAAA;EACrB,0CAA2B,CAAA;EAC3B,8CAA+B,CAAA;EAC/B,8CAA+B,CAAA;AACjC,CAAC,EALWA,mBAAW,KAAXA,mBAAW,QAKtB;AAED,IAAY,WAEX;AAFD,WAAY,WAAW;EACrB,wCAAyB,CAAA;AAC3B,CAAC,EAFW,WAAW,KAAX,WAAW;;","names":["Business","WidgetStyle"],"sources":["./src/types/index.ts"],"sourcesContent":["// Match slug with partner slug in wp admin\n// Dont forget to add the partners url to cors for creditsafe\n// https://bitbucket.org/afonso-sweden/creditsafe-lookup/src/main/api/index.ts\n\nexport enum Business {\n kund = 'kund',\n byggmax = 'byggmax',\n skanska = 'skanska',\n string = 'string-furniture',\n hornbach = 'hornbach',\n forebygg = 'forebygg',\n doro = 'doro',\n elfa = 'elfa',\n kbygg = 'k-bygg',\n norrgavel = 'norrgavel',\n fargvaruhuset = 'fargvaruhuset',\n zaptec = 'zaptec',\n tesla = 'tesla',\n klint = 'klint',\n flyttsmart = 'flyttsmart',\n lg = 'lg',\n sparfonster = 'sparfonster',\n power = 'power',\n traningspartner = 'traningspartner',\n superfront = 'superfront',\n inet = 'inet',\n design24 = 'design24',\n netatonce = 'netatonce',\n bygghemma = 'bygghemma',\n badshop = 'badshop',\n byggshop = 'byggshop',\n golvshop = 'golvshop',\n golvpoolen = 'golvpoolen',\n webhallen = 'webhallen',\n homeroom = 'homeroom',\n pickyliving = 'picky-living',\n amina = 'amina',\n}\n\ntype Icon = {\n url: string;\n};\n\ninterface Customer {\n ID: number;\n post_title: string;\n post_name: string;\n post_type: string;\n filter: string;\n categories: CustomerCategory[];\n logo?: Icon;\n partner_url?: string;\n at_hemfixarna: boolean;\n info_title: string;\n widget_title?: string;\n info_text: string;\n checkout_title: string;\n checkout_trust_badges: { text: string }[];\n trust_badges: { text: string }[];\n source?: Source;\n password_protected: boolean;\n}\n\ninterface CustomerCategory {\n id: string;\n name: string;\n widget_title?: string;\n icon: string;\n show_products: boolean;\n products: { fields: Product }[] | false;\n sub_categories: CustomerSubCategory[] | false;\n add_painting: boolean;\n}\n\ninterface CustomerSubCategory {\n id: string;\n name: string;\n widget_title?: string;\n icon: string;\n products: { fields: Product }[];\n parent: string;\n add_painting: boolean;\n}\n\ninterface Part {\n ID: number;\n post_author: number;\n post_date: Date;\n post_date_gmt: Date;\n post_content: string;\n post_title: string;\n post_excerpt: string;\n post_status: string;\n comment_status: string;\n ping_status: string;\n post_password: string;\n post_name: string;\n to_ping: string;\n pinged: string;\n post_modified: Date;\n post_modified_gmt: Date;\n post_content_filtered: string;\n post_parent: 0 | 1;\n guid: string;\n menu_order: 0;\n post_type: string;\n post_mime_type: string;\n comment_count: number;\n filter: string;\n price: number;\n title: string;\n}\n\ninterface Product {\n ID: number;\n post_author: string;\n post_date: Date;\n post_date_gmt: Date;\n post_content: string;\n post_title: string;\n post_excerpt: string;\n post_status: string;\n comment_status: string;\n ping_status: string;\n post_password: string;\n post_name: string;\n to_ping: string;\n pinged: string;\n post_modified: Date;\n post_modified_gmt: Date;\n post_content_filtered: string;\n post_parent: 0;\n guid: string;\n menu_order: 0;\n post_type: string;\n post_mime_type: string;\n comment_count: 0;\n filter: string;\n price: number;\n icon?: Icon | string;\n parts?: Array<Part>;\n list: Array<{ bullet: string }>;\n terms: string;\n terms_checkout: string;\n terms_show_checkbox: boolean;\n rut: boolean;\n rot: boolean;\n green: boolean;\n hide_start_fee: boolean;\n description: string;\n category: string;\n title: string;\n invoice: string;\n invoice_price: string;\n invoice_description?: string;\n start_fee_obj: StartFee | null;\n}\n\ninterface Service {\n ID: 41857;\n icon?: Icon | string;\n post_author: 34419;\n post_date: Date;\n post_date_gmt: Date;\n post_content: string;\n post_title: string;\n post_excerpt: string;\n post_status: string;\n comment_status: string;\n ping_status: string;\n post_password: string;\n post_name: string;\n to_ping: string;\n pinged: string;\n post_modified: Date;\n post_modified_gmt: Date;\n post_content_filtered: string;\n post_parent: 0;\n guid: string;\n menu_order: 0;\n post_type: 'service';\n post_mime_type: string;\n comment_count: 0;\n filter: string;\n products: Array<Product>;\n}\n\ninterface Category {\n count: number;\n description: string;\n name: string;\n icon?: Icon | string;\n parent: 0 | 1;\n slug: string;\n taxonomy: 'service_cat';\n term_group: 0 | 1;\n term_id: number;\n term_order: string;\n term_taxonomy_id: number;\n sub_cats?: Array<Category>;\n services?: Array<Service>;\n}\n\ninterface WpOptions {\n link: { title: string; url: string };\n trust: { trust_badge: string }[];\n thank_you_image: string;\n start_fee: number;\n terms: string;\n maleri_title: string;\n maleri_text: string;\n}\ninterface CartPart {\n id: number;\n amount: number;\n price: number;\n name: string;\n}\n\ninterface CartItem {\n id: number;\n price: number;\n name: string;\n amount: number;\n parts: CartPart[];\n rut: boolean;\n rot: boolean;\n green: boolean;\n start_fee: boolean;\n terms_checkout: string;\n icon?: Icon | string;\n start_fee_obj: StartFee | null;\n}\n\nexport enum WidgetStyle {\n standard = 'standard',\n alternative = 'alternative',\n alternative_2 = 'alternative_2',\n alternative_3 = 'alternative_3',\n}\n\nexport enum TopCategory {\n byggmax = 'category/bygg',\n}\n\ninterface User {\n email: string;\n phone: string;\n ssn: string;\n firstName: string;\n lastName: string;\n street: string;\n zip: string;\n town: string;\n}\n\ninterface RutOptions {\n rut_start_fee_heading: string;\n rut_start_fee_text: string;\n rut_start_fee_text_secondary: string;\n}\n\ninterface RotOptions {\n rot_start_fee_heading: string;\n rot_start_fee_text: string;\n rot_start_fee_text_secondary: string;\n}\n\ninterface GreenOptions {\n green_start_fee_heading: string;\n green_start_fee_text: string;\n green_start_fee_text_secondary: string;\n}\n\ninterface SubSource {\n 'recordId': string;\n 'So_SubSource::Sus01_Name': string;\n 'So_SubSource::_id': string;\n 'So_SubSource::_id_Source': string;\n 'modId': string;\n}\n\ninterface FieldData {\n _id: string;\n So01_Name: string;\n So457_Aktiv_ac: number;\n So40_WebSubSource: string | number;\n So39_WebSource: number;\n rec_id: number;\n}\n\ninterface Source {\n fieldData: FieldData;\n sub_sources: SubSource[];\n}\n\ninterface SourcesRespone {\n dataInfo: {\n database: string;\n layout: string;\n table: string;\n totalRecordCount: number;\n foundCount: number;\n returnedCount: number;\n };\n data: Source[];\n}\n\ninterface StartFee {\n ID: number;\n title: string;\n price: number;\n pop_up: string | null;\n discount_type: string | null;\n description: string;\n}\n\nexport type {\n CartItem,\n CartPart,\n Category,\n Customer,\n CustomerCategory,\n CustomerSubCategory,\n GreenOptions,\n Icon,\n Part,\n Product,\n RotOptions,\n RutOptions,\n Service,\n Source,\n SourcesRespone,\n StartFee,\n User,\n WpOptions,\n};\n"],"version":3}
|
@@ -31,6 +31,10 @@ export var Business;
|
|
31
31
|
Business["byggshop"] = "byggshop";
|
32
32
|
Business["golvshop"] = "golvshop";
|
33
33
|
Business["golvpoolen"] = "golvpoolen";
|
34
|
+
Business["webhallen"] = "webhallen";
|
35
|
+
Business["homeroom"] = "homeroom";
|
36
|
+
Business["pickyliving"] = "picky-living";
|
37
|
+
Business["amina"] = "amina";
|
34
38
|
})(Business || (Business = {}));
|
35
39
|
export var WidgetStyle;
|
36
40
|
(function (WidgetStyle) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,6DAA6D;AAC7D,8EAA8E;AAE9E,MAAM,CAAN,IAAY,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,6DAA6D;AAC7D,8EAA8E;AAE9E,MAAM,CAAN,IAAY,QAiCX;AAjCD,WAAY,QAAQ;EAClB,yBAAa,CAAA;EACb,+BAAmB,CAAA;EACnB,+BAAmB,CAAA;EACnB,uCAA2B,CAAA;EAC3B,iCAAqB,CAAA;EACrB,iCAAqB,CAAA;EACrB,yBAAa,CAAA;EACb,yBAAa,CAAA;EACb,4BAAgB,CAAA;EAChB,mCAAuB,CAAA;EACvB,2CAA+B,CAAA;EAC/B,6BAAiB,CAAA;EACjB,2BAAe,CAAA;EACf,2BAAe,CAAA;EACf,qCAAyB,CAAA;EACzB,qBAAS,CAAA;EACT,uCAA2B,CAAA;EAC3B,2BAAe,CAAA;EACf,+CAAmC,CAAA;EACnC,qCAAyB,CAAA;EACzB,yBAAa,CAAA;EACb,iCAAqB,CAAA;EACrB,mCAAuB,CAAA;EACvB,mCAAuB,CAAA;EACvB,+BAAmB,CAAA;EACnB,iCAAqB,CAAA;EACrB,iCAAqB,CAAA;EACrB,qCAAyB,CAAA;EACzB,mCAAuB,CAAA;EACvB,iCAAqB,CAAA;EACrB,wCAA4B,CAAA;EAC5B,2BAAe,CAAA;AACjB,CAAC,EAjCW,QAAQ,KAAR,QAAQ,QAiCnB;AAqMD,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;EACrB,oCAAqB,CAAA;EACrB,0CAA2B,CAAA;EAC3B,8CAA+B,CAAA;EAC/B,8CAA+B,CAAA;AACjC,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,MAAM,CAAN,IAAY,WAEX;AAFD,WAAY,WAAW;EACrB,wCAAyB,CAAA;AAC3B,CAAC,EAFW,WAAW,KAAX,WAAW,QAEtB","sourcesContent":["// Match slug with partner slug in wp admin\n// Dont forget to add the partners url to cors for creditsafe\n// https://bitbucket.org/afonso-sweden/creditsafe-lookup/src/main/api/index.ts\n\nexport enum Business {\n kund = 'kund',\n byggmax = 'byggmax',\n skanska = 'skanska',\n string = 'string-furniture',\n hornbach = 'hornbach',\n forebygg = 'forebygg',\n doro = 'doro',\n elfa = 'elfa',\n kbygg = 'k-bygg',\n norrgavel = 'norrgavel',\n fargvaruhuset = 'fargvaruhuset',\n zaptec = 'zaptec',\n tesla = 'tesla',\n klint = 'klint',\n flyttsmart = 'flyttsmart',\n lg = 'lg',\n sparfonster = 'sparfonster',\n power = 'power',\n traningspartner = 'traningspartner',\n superfront = 'superfront',\n inet = 'inet',\n design24 = 'design24',\n netatonce = 'netatonce',\n bygghemma = 'bygghemma',\n badshop = 'badshop',\n byggshop = 'byggshop',\n golvshop = 'golvshop',\n golvpoolen = 'golvpoolen',\n webhallen = 'webhallen',\n homeroom = 'homeroom',\n pickyliving = 'picky-living',\n amina = 'amina',\n}\n\ntype Icon = {\n url: string;\n};\n\ninterface Customer {\n ID: number;\n post_title: string;\n post_name: string;\n post_type: string;\n filter: string;\n categories: CustomerCategory[];\n logo?: Icon;\n partner_url?: string;\n at_hemfixarna: boolean;\n info_title: string;\n widget_title?: string;\n info_text: string;\n checkout_title: string;\n checkout_trust_badges: { text: string }[];\n trust_badges: { text: string }[];\n source?: Source;\n password_protected: boolean;\n}\n\ninterface CustomerCategory {\n id: string;\n name: string;\n widget_title?: string;\n icon: string;\n show_products: boolean;\n products: { fields: Product }[] | false;\n sub_categories: CustomerSubCategory[] | false;\n add_painting: boolean;\n}\n\ninterface CustomerSubCategory {\n id: string;\n name: string;\n widget_title?: string;\n icon: string;\n products: { fields: Product }[];\n parent: string;\n add_painting: boolean;\n}\n\ninterface Part {\n ID: number;\n post_author: number;\n post_date: Date;\n post_date_gmt: Date;\n post_content: string;\n post_title: string;\n post_excerpt: string;\n post_status: string;\n comment_status: string;\n ping_status: string;\n post_password: string;\n post_name: string;\n to_ping: string;\n pinged: string;\n post_modified: Date;\n post_modified_gmt: Date;\n post_content_filtered: string;\n post_parent: 0 | 1;\n guid: string;\n menu_order: 0;\n post_type: string;\n post_mime_type: string;\n comment_count: number;\n filter: string;\n price: number;\n title: string;\n}\n\ninterface Product {\n ID: number;\n post_author: string;\n post_date: Date;\n post_date_gmt: Date;\n post_content: string;\n post_title: string;\n post_excerpt: string;\n post_status: string;\n comment_status: string;\n ping_status: string;\n post_password: string;\n post_name: string;\n to_ping: string;\n pinged: string;\n post_modified: Date;\n post_modified_gmt: Date;\n post_content_filtered: string;\n post_parent: 0;\n guid: string;\n menu_order: 0;\n post_type: string;\n post_mime_type: string;\n comment_count: 0;\n filter: string;\n price: number;\n icon?: Icon | string;\n parts?: Array<Part>;\n list: Array<{ bullet: string }>;\n terms: string;\n terms_checkout: string;\n terms_show_checkbox: boolean;\n rut: boolean;\n rot: boolean;\n green: boolean;\n hide_start_fee: boolean;\n description: string;\n category: string;\n title: string;\n invoice: string;\n invoice_price: string;\n invoice_description?: string;\n start_fee_obj: StartFee | null;\n}\n\ninterface Service {\n ID: 41857;\n icon?: Icon | string;\n post_author: 34419;\n post_date: Date;\n post_date_gmt: Date;\n post_content: string;\n post_title: string;\n post_excerpt: string;\n post_status: string;\n comment_status: string;\n ping_status: string;\n post_password: string;\n post_name: string;\n to_ping: string;\n pinged: string;\n post_modified: Date;\n post_modified_gmt: Date;\n post_content_filtered: string;\n post_parent: 0;\n guid: string;\n menu_order: 0;\n post_type: 'service';\n post_mime_type: string;\n comment_count: 0;\n filter: string;\n products: Array<Product>;\n}\n\ninterface Category {\n count: number;\n description: string;\n name: string;\n icon?: Icon | string;\n parent: 0 | 1;\n slug: string;\n taxonomy: 'service_cat';\n term_group: 0 | 1;\n term_id: number;\n term_order: string;\n term_taxonomy_id: number;\n sub_cats?: Array<Category>;\n services?: Array<Service>;\n}\n\ninterface WpOptions {\n link: { title: string; url: string };\n trust: { trust_badge: string }[];\n thank_you_image: string;\n start_fee: number;\n terms: string;\n maleri_title: string;\n maleri_text: string;\n}\ninterface CartPart {\n id: number;\n amount: number;\n price: number;\n name: string;\n}\n\ninterface CartItem {\n id: number;\n price: number;\n name: string;\n amount: number;\n parts: CartPart[];\n rut: boolean;\n rot: boolean;\n green: boolean;\n start_fee: boolean;\n terms_checkout: string;\n icon?: Icon | string;\n start_fee_obj: StartFee | null;\n}\n\nexport enum WidgetStyle {\n standard = 'standard',\n alternative = 'alternative',\n alternative_2 = 'alternative_2',\n alternative_3 = 'alternative_3',\n}\n\nexport enum TopCategory {\n byggmax = 'category/bygg',\n}\n\ninterface User {\n email: string;\n phone: string;\n ssn: string;\n firstName: string;\n lastName: string;\n street: string;\n zip: string;\n town: string;\n}\n\ninterface RutOptions {\n rut_start_fee_heading: string;\n rut_start_fee_text: string;\n rut_start_fee_text_secondary: string;\n}\n\ninterface RotOptions {\n rot_start_fee_heading: string;\n rot_start_fee_text: string;\n rot_start_fee_text_secondary: string;\n}\n\ninterface GreenOptions {\n green_start_fee_heading: string;\n green_start_fee_text: string;\n green_start_fee_text_secondary: string;\n}\n\ninterface SubSource {\n 'recordId': string;\n 'So_SubSource::Sus01_Name': string;\n 'So_SubSource::_id': string;\n 'So_SubSource::_id_Source': string;\n 'modId': string;\n}\n\ninterface FieldData {\n _id: string;\n So01_Name: string;\n So457_Aktiv_ac: number;\n So40_WebSubSource: string | number;\n So39_WebSource: number;\n rec_id: number;\n}\n\ninterface Source {\n fieldData: FieldData;\n sub_sources: SubSource[];\n}\n\ninterface SourcesRespone {\n dataInfo: {\n database: string;\n layout: string;\n table: string;\n totalRecordCount: number;\n foundCount: number;\n returnedCount: number;\n };\n data: Source[];\n}\n\ninterface StartFee {\n ID: number;\n title: string;\n price: number;\n pop_up: string | null;\n discount_type: string | null;\n description: string;\n}\n\nexport type {\n CartItem,\n CartPart,\n Category,\n Customer,\n CustomerCategory,\n CustomerSubCategory,\n GreenOptions,\n Icon,\n Part,\n Product,\n RotOptions,\n RutOptions,\n Service,\n Source,\n SourcesRespone,\n StartFee,\n User,\n WpOptions,\n};\n"]}
|
@@ -3,7 +3,7 @@ const getRutPrice = (price) => {
|
|
3
3
|
return Math.ceil(price / 2);
|
4
4
|
};
|
5
5
|
const getRotPrice = (price) => {
|
6
|
-
return Math.ceil(price
|
6
|
+
return Math.ceil(price / 2);
|
7
7
|
};
|
8
8
|
const getGreenPrice = (price) => {
|
9
9
|
return Math.ceil(price * 0.5);
|
@@ -121,15 +121,6 @@ const getStartFee = () => {
|
|
121
121
|
const rotPrice = state.rot ? getRotPrice(state.options.start_fee) : state.options.start_fee * 1;
|
122
122
|
const greenPrice = state.green ? getGreenPrice(state.options.start_fee) : state.options.start_fee * 1;
|
123
123
|
return { rut: hasRut ? rutPrice : 0, rot: hasRot ? rotPrice : 0, green: hasGreen ? greenPrice : 0, length: [hasRut, hasRot, hasGreen].filter(d => d).length };
|
124
|
-
// if (hasRut && hasRot) {
|
125
|
-
// return { rut: rutPrice, rot: rotPrice, length: 2 };
|
126
|
-
// } else if (hasRut) {
|
127
|
-
// return { rut: rutPrice, rot: 0, length: 1 };
|
128
|
-
// } else if (hasRot) {
|
129
|
-
// return { rut: 0, rot: rotPrice, length: 1 };
|
130
|
-
// } else {
|
131
|
-
// return { rut: 0, rot: 0, length: 0 };
|
132
|
-
// }
|
133
124
|
};
|
134
125
|
const getItemPrice = (item) => {
|
135
126
|
const partsPrice = item.parts.reduce((acc, curr) => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"calc.js","sourceRoot":"","sources":["../../src/utils/calc.ts"],"names":[],"mappings":"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","sourcesContent":["import state from '../store';\nimport { CartItem, CartPart, Part, Product } from '../types';\n\nconst getRutPrice = (price: number) => {\n return Math.ceil(price / 2);\n};\n\nconst getRotPrice = (price: number) => {\n return Math.ceil(price * 0.7);\n};\n\nconst getGreenPrice = (price: number) => {\n return Math.ceil(price * 0.5);\n};\n\nconst getRutStartFee = () => {\n if (!state.options) return 448;\n if (state.rut) {\n return getRutPrice(state.options.start_fee);\n } else {\n return state.options.start_fee;\n }\n};\n\nconst getRotStartFee = () => {\n if (!state.options) return 448;\n if (state.rot) {\n return getRotPrice(state.options.start_fee);\n } else {\n return state.options.start_fee;\n }\n};\n\nconst getProductPrice = (product: Product | CartItem, price?: number, amount: number = 1) => {\n if (product.rot && state.rot) {\n return getRotPrice((price || product.price) * amount);\n } else if (product.rut && state.rut) {\n return getRutPrice((price || product.price) * amount);\n } else if (product.green && state.green) {\n return getGreenPrice((price || product.price) * amount);\n } else {\n return (price || product.price) * amount;\n }\n};\n\nconst getProductPriceWithRotAndRut = (product: Product) => {\n if (product.rot) {\n return getRotPrice(product.price);\n } else if (product.rut && state.rut) {\n return getRutPrice(product.price);\n } else {\n return product.price;\n }\n};\n\nconst getPartPrice = (part: Part | CartPart, product: Product | CartItem, amount: number = 1) => {\n if (product.rot && state.rot) {\n return getRotPrice(part.price * amount);\n } else if (product.rut && state.rut) {\n return getRutPrice(part.price * amount);\n } else if (product.green && state.green) {\n return getGreenPrice(part.price * amount);\n } else {\n return part.price * amount;\n }\n};\n\n\nconst groupCartItemsByStartFee = (cart: CartItem[]) => {\n return cart.reduce((groups, item) => {\n const startFeeID = item.start_fee_obj?.ID || null;\n if (!groups[startFeeID]) {\n groups[startFeeID] = [];\n }\n groups[startFeeID].push(item);\n return groups;\n }, {} as Record<string, CartItem[]>);\n};\n\nconst calculateStartFee = (cart: CartItem[] = state.cart) => {\n const uniqueStartFees = new Set<number>();\n let totalRut = 0;\n let totalRot = 0;\n let totalGreen = 0;\n let totalDefault = 0;\n\n cart.forEach(item => {\n const startFee = item.start_fee_obj;\n if (startFee && !uniqueStartFees.has(startFee.ID)) {\n uniqueStartFees.add(startFee.ID);\n\n if (item.rut) {\n totalRut += state.rut ? getRutPrice(startFee.price) : startFee.price;\n }\n if (item.rot) {\n totalRot += state.rot ? getRotPrice(startFee.price) : startFee.price;\n }\n if (item.green) {\n totalGreen += state.green ? getGreenPrice(startFee.price) : startFee.price;\n }\n if (!item.rut && !item.rot && !item.green) {\n totalDefault += startFee.price;\n }\n }\n });\n\n const appliedDiscounts = [totalRut > 0, totalRot > 0, totalGreen > 0];\n return {\n rut: totalRut,\n rot: totalRot,\n green: totalGreen,\n default: totalDefault,\n length: appliedDiscounts.filter(Boolean).length,\n };\n};\n\nconst getStartFee = () => {\n if (!state.cart) return { rut: 0, rot: 0, green: 0 };\n const hasRut = state.cart.some(item => item.rut && item.start_fee);\n const hasRot = state.cart.some(item => item.rot && item.start_fee);\n const hasGreen = state.cart.some(item => item.green && item.start_fee);\n const rutPrice = state.rut ? getRutPrice(state.options.start_fee) : state.options.start_fee * 1;\n const rotPrice = state.rot ? getRotPrice(state.options.start_fee) : state.options.start_fee * 1;\n const greenPrice = state.green ? getGreenPrice(state.options.start_fee) : state.options.start_fee * 1;\n return { rut: hasRut ? rutPrice : 0, rot: hasRot ? rotPrice : 0, green: hasGreen ? greenPrice : 0, length: [hasRut, hasRot, hasGreen].filter(d => d).length };\n // if (hasRut && hasRot) {\n // return { rut: rutPrice, rot: rotPrice, length: 2 };\n // } else if (hasRut) {\n // return { rut: rutPrice, rot: 0, length: 1 };\n // } else if (hasRot) {\n // return { rut: 0, rot: rotPrice, length: 1 };\n // } else {\n // return { rut: 0, rot: 0, length: 0 };\n // }\n};\n\nconst getItemPrice = (item: CartItem) => {\n const partsPrice = item.parts.reduce((acc, curr) => {\n return acc + curr.price * curr.amount;\n }, 0);\n return getProductPrice(item, item.price * item.amount + partsPrice);\n};\n\nconst calculateRot = () => {\n const totalWithRot =\n state.cart.reduce((acc, curr) => {\n return curr.rot ? acc + getItemPrice(curr) : acc;\n }, 0) + (state.cart.some(item => item.rot) ? calculateStartFee().rot : 0);\n\n const totalWithoutRot = state.cart.reduce((acc, curr) => {\n const partsPrice = curr.parts.reduce((acc, part) => {\n return acc + part.price * part.amount;\n }, 0);\n const startFee = curr.start_fee_obj?.price || 0;\n\n if (curr.rot) {\n if (!acc.startFeeApplied) {\n acc.startFeeApplied = true;\n acc.amount += curr.price * curr.amount + partsPrice + startFee;\n } else {\n acc.amount += curr.price * curr.amount + partsPrice;\n }\n }\n \n return acc;\n }, { amount: 0, startFeeApplied: false }).amount;\n\n return totalWithoutRot - totalWithRot;\n};\n\nconst calculateGreenDiscount = () => {\n const totalWithGreen =\n state.cart.reduce((acc, curr) => {\n return curr.green ? acc + getItemPrice(curr) : acc;\n }, 0) + (state.cart.some(item => item.green) ? calculateStartFee().green : 0);\n\n const totalWithoutGreen = state.cart.reduce((acc, curr) => {\n const partsPrice = curr.parts.reduce((acc, part) => {\n return acc + part.price * part.amount;\n }, 0);\n const startFee = curr.start_fee_obj?.price || 0;\n\n if (curr.green) {\n if (!acc.startFeeApplied) {\n acc.startFeeApplied = true;\n acc.amount += curr.price * curr.amount + partsPrice + startFee;\n } else {\n acc.amount += curr.price * curr.amount + partsPrice;\n }\n }\n \n return acc;\n }, { amount: 0, startFeeApplied: false }).amount;\n\n return totalWithoutGreen - totalWithGreen;\n};\n\nconst calculateRut = () => {\n const totalWithRut =\n state.cart.reduce((acc, curr) => {\n return curr.rut ? acc + getItemPrice(curr) : acc;\n }, 0) + (state.cart.some(item => item.rut) ? calculateStartFee().rut : 0);\n\n const totalWithoutRut = state.cart.reduce((acc, curr) => {\n const partsPrice = curr.parts.reduce((acc, part) => {\n return acc + part.price * part.amount;\n }, 0);\n const startFee = curr.start_fee_obj?.price || 0;\n\n if (curr.rut) {\n if (!acc.startFeeApplied) {\n acc.startFeeApplied = true;\n acc.amount += curr.price * curr.amount + partsPrice + startFee;\n } else {\n acc.amount += curr.price * curr.amount + partsPrice;\n }\n }\n \n return acc;\n }, { amount: 0, startFeeApplied: false }).amount;\n\n return totalWithoutRut - totalWithRut;\n};\n\nconst getTotalPrice = () => {\n return state.cart.reduce((acc, curr) => acc + getItemPrice(curr), 0) + calculateStartFee().rot + calculateStartFee().rut + calculateStartFee().green + calculateStartFee().default;\n};\n\nexport {\n calculateGreenDiscount,\n calculateRot,\n calculateRut,\n getGreenPrice,\n getItemPrice,\n getPartPrice,\n getProductPrice,\n getProductPriceWithRotAndRut,\n getRotPrice,\n getRotStartFee,\n getRutPrice,\n getRutStartFee,\n getStartFee,\n getTotalPrice,\n groupCartItemsByStartFee,\n calculateStartFee\n};\n"]}
|
1
|
+
{"version":3,"file":"calc.js","sourceRoot":"","sources":["../../src/utils/calc.ts"],"names":[],"mappings":"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","sourcesContent":["import state from '../store';\nimport { CartItem, CartPart, Part, Product } from '../types';\n\nconst getRutPrice = (price: number) => {\n return Math.ceil(price / 2);\n};\n\nconst getRotPrice = (price: number) => {\n return Math.ceil(price / 2);\n};\n\nconst getGreenPrice = (price: number) => {\n return Math.ceil(price * 0.5);\n};\n\nconst getRutStartFee = () => {\n if (!state.options) return 448;\n if (state.rut) {\n return getRutPrice(state.options.start_fee);\n } else {\n return state.options.start_fee;\n }\n};\n\nconst getRotStartFee = () => {\n if (!state.options) return 448;\n if (state.rot) {\n return getRotPrice(state.options.start_fee);\n } else {\n return state.options.start_fee;\n }\n};\n\nconst getProductPrice = (product: Product | CartItem, price?: number, amount: number = 1) => {\n if (product.rot && state.rot) {\n return getRotPrice((price || product.price) * amount);\n } else if (product.rut && state.rut) {\n return getRutPrice((price || product.price) * amount);\n } else if (product.green && state.green) {\n return getGreenPrice((price || product.price) * amount);\n } else {\n return (price || product.price) * amount;\n }\n};\n\nconst getProductPriceWithRotAndRut = (product: Product) => {\n if (product.rot) {\n return getRotPrice(product.price);\n } else if (product.rut && state.rut) {\n return getRutPrice(product.price);\n } else {\n return product.price;\n }\n};\n\nconst getPartPrice = (part: Part | CartPart, product: Product | CartItem, amount: number = 1) => {\n if (product.rot && state.rot) {\n return getRotPrice(part.price * amount);\n } else if (product.rut && state.rut) {\n return getRutPrice(part.price * amount);\n } else if (product.green && state.green) {\n return getGreenPrice(part.price * amount);\n } else {\n return part.price * amount;\n }\n};\n\n\nconst groupCartItemsByStartFee = (cart: CartItem[]) => {\n return cart.reduce((groups, item) => {\n const startFeeID = item.start_fee_obj?.ID || null;\n if (!groups[startFeeID]) {\n groups[startFeeID] = [];\n }\n groups[startFeeID].push(item);\n return groups;\n }, {} as Record<string, CartItem[]>);\n};\n\nconst calculateStartFee = (cart: CartItem[] = state.cart) => {\n const uniqueStartFees = new Set<number>();\n let totalRut = 0;\n let totalRot = 0;\n let totalGreen = 0;\n let totalDefault = 0;\n\n cart.forEach(item => {\n const startFee = item.start_fee_obj;\n if (startFee && !uniqueStartFees.has(startFee.ID)) {\n uniqueStartFees.add(startFee.ID);\n\n if (item.rut) {\n totalRut += state.rut ? getRutPrice(startFee.price) : startFee.price;\n }\n if (item.rot) {\n totalRot += state.rot ? getRotPrice(startFee.price) : startFee.price;\n }\n if (item.green) {\n totalGreen += state.green ? getGreenPrice(startFee.price) : startFee.price;\n }\n if (!item.rut && !item.rot && !item.green) {\n totalDefault += startFee.price;\n }\n }\n });\n\n const appliedDiscounts = [totalRut > 0, totalRot > 0, totalGreen > 0];\n return {\n rut: totalRut,\n rot: totalRot,\n green: totalGreen,\n default: totalDefault,\n length: appliedDiscounts.filter(Boolean).length,\n };\n};\n\nconst getStartFee = () => {\n if (!state.cart) return { rut: 0, rot: 0, green: 0 };\n const hasRut = state.cart.some(item => item.rut && item.start_fee);\n const hasRot = state.cart.some(item => item.rot && item.start_fee);\n const hasGreen = state.cart.some(item => item.green && item.start_fee);\n const rutPrice = state.rut ? getRutPrice(state.options.start_fee) : state.options.start_fee * 1;\n const rotPrice = state.rot ? getRotPrice(state.options.start_fee) : state.options.start_fee * 1;\n const greenPrice = state.green ? getGreenPrice(state.options.start_fee) : state.options.start_fee * 1;\n return { rut: hasRut ? rutPrice : 0, rot: hasRot ? rotPrice : 0, green: hasGreen ? greenPrice : 0, length: [hasRut, hasRot, hasGreen].filter(d => d).length };\n};\n\nconst getItemPrice = (item: CartItem) => {\n const partsPrice = item.parts.reduce((acc, curr) => {\n return acc + curr.price * curr.amount;\n }, 0);\n return getProductPrice(item, item.price * item.amount + partsPrice);\n};\n\nconst calculateRot = () => {\n const totalWithRot =\n state.cart.reduce((acc, curr) => {\n return curr.rot ? acc + getItemPrice(curr) : acc;\n }, 0) + (state.cart.some(item => item.rot) ? calculateStartFee().rot : 0);\n\n const totalWithoutRot = state.cart.reduce((acc, curr) => {\n const partsPrice = curr.parts.reduce((acc, part) => {\n return acc + part.price * part.amount;\n }, 0);\n const startFee = curr.start_fee_obj?.price || 0;\n\n if (curr.rot) {\n if (!acc.startFeeApplied) {\n acc.startFeeApplied = true;\n acc.amount += curr.price * curr.amount + partsPrice + startFee;\n } else {\n acc.amount += curr.price * curr.amount + partsPrice;\n }\n }\n \n return acc;\n }, { amount: 0, startFeeApplied: false }).amount;\n\n return totalWithoutRot - totalWithRot;\n};\n\nconst calculateGreenDiscount = () => {\n const totalWithGreen =\n state.cart.reduce((acc, curr) => {\n return curr.green ? acc + getItemPrice(curr) : acc;\n }, 0) + (state.cart.some(item => item.green) ? calculateStartFee().green : 0);\n\n const totalWithoutGreen = state.cart.reduce((acc, curr) => {\n const partsPrice = curr.parts.reduce((acc, part) => {\n return acc + part.price * part.amount;\n }, 0);\n const startFee = curr.start_fee_obj?.price || 0;\n\n if (curr.green) {\n if (!acc.startFeeApplied) {\n acc.startFeeApplied = true;\n acc.amount += curr.price * curr.amount + partsPrice + startFee;\n } else {\n acc.amount += curr.price * curr.amount + partsPrice;\n }\n }\n \n return acc;\n }, { amount: 0, startFeeApplied: false }).amount;\n\n return totalWithoutGreen - totalWithGreen;\n};\n\nconst calculateRut = () => {\n const totalWithRut =\n state.cart.reduce((acc, curr) => {\n return curr.rut ? acc + getItemPrice(curr) : acc;\n }, 0) + (state.cart.some(item => item.rut) ? calculateStartFee().rut : 0);\n\n const totalWithoutRut = state.cart.reduce((acc, curr) => {\n const partsPrice = curr.parts.reduce((acc, part) => {\n return acc + part.price * part.amount;\n }, 0);\n const startFee = curr.start_fee_obj?.price || 0;\n\n if (curr.rut) {\n if (!acc.startFeeApplied) {\n acc.startFeeApplied = true;\n acc.amount += curr.price * curr.amount + partsPrice + startFee;\n } else {\n acc.amount += curr.price * curr.amount + partsPrice;\n }\n }\n \n return acc;\n }, { amount: 0, startFeeApplied: false }).amount;\n\n return totalWithoutRut - totalWithRut;\n};\n\nconst getTotalPrice = () => {\n return state.cart.reduce((acc, curr) => acc + getItemPrice(curr), 0) + calculateStartFee().rot + calculateStartFee().rut + calculateStartFee().green + calculateStartFee().default;\n};\n\nexport {\n calculateGreenDiscount,\n calculateRot,\n calculateRut,\n getGreenPrice,\n getItemPrice,\n getPartPrice,\n getProductPrice,\n getProductPriceWithRotAndRut,\n getRotPrice,\n getRotStartFee,\n getRutPrice,\n getRutStartFee,\n getStartFee,\n getTotalPrice,\n groupCartItemsByStartFee,\n calculateStartFee\n};\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { r as registerInstance, h, g as getElement, F as Fragment, a as getAssetPath } from './index-ea1d222e.js';
|
2
|
-
import { s as state } from './index-
|
3
|
-
import { B as Business, W as WidgetStyle } from './index-
|
2
|
+
import { s as state } from './index-20d4c934.js';
|
3
|
+
import { B as Business, W as WidgetStyle } from './index-17dff2be.js';
|
4
4
|
|
5
5
|
const hideField = (field) => {
|
6
6
|
return field.split(' ').reduce((acc, curr) => {
|
@@ -87,7 +87,7 @@ const getRutPrice = (price) => {
|
|
87
87
|
return Math.ceil(price / 2);
|
88
88
|
};
|
89
89
|
const getRotPrice = (price) => {
|
90
|
-
return Math.ceil(price
|
90
|
+
return Math.ceil(price / 2);
|
91
91
|
};
|
92
92
|
const getGreenPrice = (price) => {
|
93
93
|
return Math.ceil(price * 0.5);
|
@@ -377,8 +377,8 @@ const getDefaultApiUrl = () => {
|
|
377
377
|
}
|
378
378
|
};
|
379
379
|
const getApiUrl = () => {
|
380
|
-
if (typeof process !== 'undefined' && process.env &&
|
381
|
-
return
|
380
|
+
if (typeof process !== 'undefined' && process.env && "https://hemfixare.dev.afonso.se") {
|
381
|
+
return "https://hemfixare.dev.afonso.se";
|
382
382
|
}
|
383
383
|
return getDefaultApiUrl();
|
384
384
|
};
|
@@ -391,8 +391,8 @@ const getDefaultCreditSafeApiUrl = () => {
|
|
391
391
|
}
|
392
392
|
};
|
393
393
|
const getCreditSafeApiUrl = () => {
|
394
|
-
if (typeof process !== 'undefined' && process.env &&
|
395
|
-
return
|
394
|
+
if (typeof process !== 'undefined' && process.env && "https://hemfixare-lookup-dev.vercel.app/api") {
|
395
|
+
return "https://hemfixare-lookup-dev.vercel.app/api";
|
396
396
|
}
|
397
397
|
return getDefaultCreditSafeApiUrl();
|
398
398
|
};
|