@paperless/core 1.39.0 → 1.41.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/CHANGELOG.md +27 -0
- package/dist/assets/icons/hidden.svg +8 -0
- package/dist/build/index.esm.js +1 -1
- package/dist/build/index.esm.js.map +1 -1
- package/dist/build/p-1079ffc6.entry.js.map +1 -1
- package/dist/build/p-826bc0fd.entry.js +2 -0
- package/dist/build/p-826bc0fd.entry.js.map +1 -0
- package/dist/build/paperless.esm.js +1 -1
- package/dist/cjs/index.cjs.js +51 -0
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/p-button_3.cjs.entry.js +11 -0
- package/dist/cjs/p-button_3.cjs.entry.js.map +1 -1
- package/dist/cjs/p-floating-menu-container_8.cjs.entry.js.map +1 -1
- package/dist/collection/assets/icons/hidden.svg +8 -0
- package/dist/collection/components/atoms/button/button.component.js +1 -1
- package/dist/collection/components/atoms/dropdown-menu-item/dropdown-menu-item.component.js +1 -1
- package/dist/collection/components/atoms/floating-menu-item/floating-menu-item.component.js +1 -1
- package/dist/collection/components/atoms/floating-menu-item/floating-menu-item.component.js.map +1 -1
- package/dist/collection/components/atoms/icon/icon.component.js +1 -1
- package/dist/collection/components/atoms/label/label.component.js +1 -1
- package/dist/collection/components/atoms/segment-item/segment-item.component.js +1 -1
- package/dist/collection/components/atoms/status/status.component.js +1 -1
- package/dist/collection/components/molecules/input-group/input-group.component.js +1 -1
- package/dist/collection/components/molecules/navigation-item/navigation-item.component.js +1 -1
- package/dist/collection/components/molecules/select/select.component.js +2 -2
- package/dist/collection/components/molecules/table-header/table-header.component.js +1 -1
- package/dist/collection/components/molecules/toast/toast.component.js +1 -1
- package/dist/collection/components/organisms/table/table.component.js +1 -1
- package/dist/collection/tailwind/animation.js +85 -85
- package/dist/collection/tailwind/animation.js.map +1 -0
- package/dist/collection/tailwind/backdrop-blur.js +3 -2
- package/dist/collection/tailwind/backdrop-blur.js.map +1 -0
- package/dist/collection/tailwind/border-radius.js +11 -10
- package/dist/collection/tailwind/border-radius.js.map +1 -0
- package/dist/collection/tailwind/colors.js +2 -1
- package/dist/collection/tailwind/colors.js.map +1 -0
- package/dist/collection/tailwind/height.js +5 -4
- package/dist/collection/tailwind/height.js.map +1 -0
- package/dist/collection/tailwind/plugins/safe-area.js +87 -93
- package/dist/collection/tailwind/plugins/safe-area.js.map +1 -0
- package/dist/collection/tailwind/rotate.js +2 -3
- package/dist/collection/tailwind/rotate.js.map +1 -0
- package/dist/collection/tailwind/scale.js +2 -1
- package/dist/collection/tailwind/scale.js.map +1 -0
- package/dist/collection/tailwind/screens.js +15 -15
- package/dist/collection/tailwind/screens.js.map +1 -0
- package/dist/collection/tailwind/shadows.js +13 -12
- package/dist/collection/tailwind/shadows.js.map +1 -0
- package/dist/collection/tailwind/spacing.js +8 -9
- package/dist/collection/tailwind/spacing.js.map +1 -0
- package/dist/collection/tailwind/typography.js +22 -21
- package/dist/collection/tailwind/typography.js.map +1 -0
- package/dist/collection/tailwind/width.js +14 -15
- package/dist/collection/tailwind/width.js.map +1 -0
- package/dist/collection/tailwind/z-index.js +13 -18
- package/dist/collection/tailwind/z-index.js.map +1 -0
- package/dist/collection/tailwind.config.js +32 -41
- package/dist/collection/tailwind.config.js.map +1 -0
- package/dist/collection/utils/icons.js +2 -0
- package/dist/collection/utils/icons.js.map +1 -1
- package/dist/collection/utils/index.js +1 -0
- package/dist/collection/utils/index.js.map +1 -1
- package/dist/collection/utils/screens.js +26 -0
- package/dist/collection/utils/screens.js.map +1 -0
- package/dist/components/floating-menu-item.component.js.map +1 -1
- package/dist/components/icon.component.js +11 -0
- package/dist/components/icon.component.js.map +1 -1
- package/dist/components/index.js +42 -1
- package/dist/components/index.js.map +1 -1
- package/dist/esm/index.js +42 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/p-button_3.entry.js +11 -0
- package/dist/esm/p-button_3.entry.js.map +1 -1
- package/dist/esm/p-floating-menu-container_8.entry.js.map +1 -1
- package/dist/index.html +1 -1
- package/dist/paperless/index.esm.js +1 -1
- package/dist/paperless/index.esm.js.map +1 -1
- package/dist/paperless/p-1079ffc6.entry.js.map +1 -1
- package/dist/paperless/p-826bc0fd.entry.js +2 -0
- package/dist/paperless/p-826bc0fd.entry.js.map +1 -0
- package/dist/paperless/paperless.esm.js +1 -1
- package/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/dist/tailwind/animation.ts +87 -0
- package/dist/tailwind/backdrop-blur.ts +3 -0
- package/dist/tailwind/border-radius.ts +11 -0
- package/dist/tailwind/colors.ts +52 -0
- package/dist/tailwind/height.ts +5 -0
- package/dist/tailwind/plugins/safe-area.ts +98 -0
- package/dist/tailwind/rotate.ts +8 -0
- package/dist/tailwind/scale.ts +3 -0
- package/dist/tailwind/{screens.js → screens.ts} +1 -1
- package/dist/tailwind/shadows.ts +13 -0
- package/dist/tailwind/spacing.ts +10 -0
- package/dist/tailwind/typography.ts +21 -0
- package/dist/tailwind/{width.js → width.ts} +1 -1
- package/dist/tailwind/z-index.ts +19 -0
- package/dist/tailwind.config.ts +43 -0
- package/dist/types/components/atoms/floating-menu-item/floating-menu-item.component.d.ts +1 -1
- package/dist/types/components.d.ts +2 -2
- package/dist/types/tailwind/animation.d.ts +151 -0
- package/dist/types/tailwind/backdrop-blur.d.ts +4 -0
- package/dist/types/tailwind/border-radius.d.ts +12 -0
- package/dist/types/tailwind/colors.d.ts +53 -0
- package/dist/types/tailwind/height.d.ts +6 -0
- package/dist/types/tailwind/plugins/safe-area.d.ts +2 -0
- package/dist/types/tailwind/rotate.d.ts +2 -0
- package/dist/types/tailwind/scale.d.ts +4 -0
- package/dist/types/tailwind/screens.d.ts +15 -0
- package/dist/types/tailwind/shadows.d.ts +11 -0
- package/dist/types/tailwind/spacing.d.ts +8 -0
- package/dist/types/tailwind/typography.d.ts +22 -0
- package/dist/types/tailwind/width.d.ts +13 -0
- package/dist/types/tailwind/z-index.d.ts +14 -0
- package/dist/types/tailwind.config.d.ts +313 -0
- package/dist/types/utils/icons.d.ts +1 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/utils/screens.d.ts +12 -0
- package/hydrate/index.js +11 -0
- package/package.json +2 -2
- package/dist/build/p-e4110d85.entry.js +0 -2
- package/dist/build/p-e4110d85.entry.js.map +0 -1
- package/dist/paperless/p-e4110d85.entry.js +0 -2
- package/dist/paperless/p-e4110d85.entry.js.map +0 -1
- package/dist/tailwind/animation.js +0 -87
- package/dist/tailwind/backdrop-blur.js +0 -3
- package/dist/tailwind/border-radius.js +0 -11
- package/dist/tailwind/colors.js +0 -52
- package/dist/tailwind/height.js +0 -5
- package/dist/tailwind/plugins/safe-area.js +0 -98
- package/dist/tailwind/rotate.js +0 -8
- package/dist/tailwind/scale.js +0 -3
- package/dist/tailwind/shadows.js +0 -13
- package/dist/tailwind/spacing.js +0 -10
- package/dist/tailwind/typography.js +0 -21
- package/dist/tailwind/z-index.js +0 -19
- package/dist/tailwind.config.js +0 -42
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -11,12 +11,63 @@ const snakeToCamelCase = (str) => str
|
|
|
11
11
|
.toLowerCase()
|
|
12
12
|
.replace(/([-_][a-z])/g, (group) => group.toUpperCase().replace('-', '').replace('_', ''));
|
|
13
13
|
|
|
14
|
+
const screens = {
|
|
15
|
+
tablet: '40rem',
|
|
16
|
+
'desktop-xs': '64rem',
|
|
17
|
+
'desktop-sm': '80rem',
|
|
18
|
+
desktop: '85.375rem',
|
|
19
|
+
'desktop-lg': '90rem',
|
|
20
|
+
'desktop-xl': '120rem',
|
|
21
|
+
// layout sizes
|
|
22
|
+
'layout-1280': '80rem',
|
|
23
|
+
'layout-1440': '90rem',
|
|
24
|
+
'layout-1536': '96rem',
|
|
25
|
+
'layout-1680': '105rem',
|
|
26
|
+
'layout-1920': '120rem',
|
|
27
|
+
'layout-2560': '160rem',
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
const getScreenSize = (size) => screens[size];
|
|
31
|
+
const getScreenSizeInRem = (size) => {
|
|
32
|
+
const screen = getScreenSize(size);
|
|
33
|
+
return parseInt(screen.replace('rem', ''), 10);
|
|
34
|
+
};
|
|
35
|
+
const getScreenSizeInPixels = (size) => {
|
|
36
|
+
const rem = getScreenSizeInRem(size);
|
|
37
|
+
return rem * 16;
|
|
38
|
+
};
|
|
39
|
+
const isBiggerThanScreen = (size) => {
|
|
40
|
+
const pixels = getScreenSizeInPixels(size);
|
|
41
|
+
return window.innerWidth > pixels;
|
|
42
|
+
};
|
|
43
|
+
const isSmallerThanScreen = (size) => {
|
|
44
|
+
const pixels = getScreenSizeInPixels(size);
|
|
45
|
+
return window.innerWidth < pixels;
|
|
46
|
+
};
|
|
47
|
+
const isBetweenScreens = (smallSize, bigSize) => {
|
|
48
|
+
return isBiggerThanScreen(smallSize) && isSmallerThanScreen(bigSize);
|
|
49
|
+
};
|
|
50
|
+
const isTouchDevice = () => !!window.matchMedia('(pointer: coarse)').matches;
|
|
51
|
+
const isMobile = () => isTouchDevice() || isSmallerThanScreen('tablet');
|
|
52
|
+
const isTablet = () => isBetweenScreens('tablet', 'desktop-xs');
|
|
53
|
+
const isDesktop = () => isBiggerThanScreen('desktop-xs');
|
|
54
|
+
|
|
14
55
|
exports.isTableColumnSizesKey = objectGetByPath.isTableColumnSizesKey;
|
|
15
56
|
exports.objectGetByPath = objectGetByPath.objectGetByPath;
|
|
16
57
|
exports.childOf = childOf.childOf;
|
|
17
58
|
exports.formatTranslation = localization.formatTranslation;
|
|
18
59
|
exports.getLocaleComponentStrings = localization.getLocaleComponentStrings;
|
|
19
60
|
exports.camelToSnakeCase = camelToSnakeCase;
|
|
61
|
+
exports.getScreenSize = getScreenSize;
|
|
62
|
+
exports.getScreenSizeInPixels = getScreenSizeInPixels;
|
|
63
|
+
exports.getScreenSizeInRem = getScreenSizeInRem;
|
|
64
|
+
exports.isBetweenScreens = isBetweenScreens;
|
|
65
|
+
exports.isBiggerThanScreen = isBiggerThanScreen;
|
|
66
|
+
exports.isDesktop = isDesktop;
|
|
67
|
+
exports.isMobile = isMobile;
|
|
68
|
+
exports.isSmallerThanScreen = isSmallerThanScreen;
|
|
69
|
+
exports.isTablet = isTablet;
|
|
70
|
+
exports.isTouchDevice = isTouchDevice;
|
|
20
71
|
exports.snakeToCamelCase = snakeToCamelCase;
|
|
21
72
|
|
|
22
73
|
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"index.cjs.js","mappings":";;;;;;;;MAAa,gBAAgB,GAAG,CAAC,GAAG,KAChC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE;MAErD,gBAAgB,GAAG,CAAC,GAAG,KAChC,GAAG;GACE,WAAW,EAAE;GACb,OAAO,CAAC,cAAc,EAAE,CAAC,KAAK,KAC3B,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC
|
|
1
|
+
{"file":"index.cjs.js","mappings":";;;;;;;;MAAa,gBAAgB,GAAG,CAAC,GAAG,KAChC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE;MAErD,gBAAgB,GAAG,CAAC,GAAG,KAChC,GAAG;GACE,WAAW,EAAE;GACb,OAAO,CAAC,cAAc,EAAE,CAAC,KAAK,KAC3B,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;;ACPjE,gBAAe;EACd,MAAM,EAAE,OAAO;EACf,YAAY,EAAE,OAAO;EACrB,YAAY,EAAE,OAAO;EACrB,OAAO,EAAE,WAAW;EACpB,YAAY,EAAE,OAAO;EACrB,YAAY,EAAE,QAAQ;;EAGtB,aAAa,EAAE,OAAO;EACtB,aAAa,EAAE,OAAO;EACtB,aAAa,EAAE,OAAO;EACtB,aAAa,EAAE,QAAQ;EACvB,aAAa,EAAE,QAAQ;EACvB,aAAa,EAAE,QAAQ;CACvB;;MCXY,aAAa,GAAG,CAAC,IAAgB,KAAK,OAAO,CAAC,IAAI,EAAE;MAEpD,kBAAkB,GAAG,CAAC,IAAgB;EAClD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;EACnC,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAChD,EAAE;MAEW,qBAAqB,GAAG,CAAC,IAAgB;EACrD,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;EACrC,OAAO,GAAG,GAAG,EAAE,CAAC;AACjB,EAAE;MAEW,kBAAkB,GAAG,CAAC,IAAgB;EAClD,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;EAC3C,OAAO,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC;AACnC,EAAE;MAEW,mBAAmB,GAAG,CAAC,IAAgB;EACnD,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;EAC3C,OAAO,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC;AACnC,EAAE;MAEW,gBAAgB,GAAG,CAC/B,SAAqB,EACrB,OAAmB;EAEnB,OAAO,kBAAkB,CAAC,SAAS,CAAC,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtE,EAAE;MAEW,aAAa,GAAG,MAC5B,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,QAAQ;MACrC,QAAQ,GAAG,MAAM,aAAa,EAAE,IAAI,mBAAmB,CAAC,QAAQ,EAAE;MAClE,QAAQ,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE;MAC1D,SAAS,GAAG,MAAM,kBAAkB,CAAC,YAAY;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/utils/transformers.ts","src/tailwind/screens.ts","src/utils/screens.ts"],"sourcesContent":["export const camelToSnakeCase = (str) =>\n str.replace(/[A-Z]/g, (letter) => `_${letter.toLowerCase()}`);\n\nexport const snakeToCamelCase = (str) =>\n str\n .toLowerCase()\n .replace(/([-_][a-z])/g, (group) =>\n group.toUpperCase().replace('-', '').replace('_', '')\n );\n","export default {\n\ttablet: '40rem', // 640 px\n\t'desktop-xs': '64rem', // 1024 px\n\t'desktop-sm': '80rem', // 1360 px\n\tdesktop: '85.375rem', // 1366\n\t'desktop-lg': '90rem', // 1440\n\t'desktop-xl': '120rem', // 1920\n\n\t// layout sizes\n\t'layout-1280': '80rem',\n\t'layout-1440': '90rem',\n\t'layout-1536': '96rem',\n\t'layout-1680': '105rem',\n\t'layout-1920': '120rem',\n\t'layout-2560': '160rem',\n};\n","import screens from '../tailwind/screens';\n\nexport type ScreenSize = keyof typeof screens;\n\nexport const getScreenSize = (size: ScreenSize) => screens[size];\n\nexport const getScreenSizeInRem = (size: ScreenSize) => {\n\tconst screen = getScreenSize(size);\n\treturn parseInt(screen.replace('rem', ''), 10);\n};\n\nexport const getScreenSizeInPixels = (size: ScreenSize) => {\n\tconst rem = getScreenSizeInRem(size);\n\treturn rem * 16;\n};\n\nexport const isBiggerThanScreen = (size: ScreenSize) => {\n\tconst pixels = getScreenSizeInPixels(size);\n\treturn window.innerWidth > pixels;\n};\n\nexport const isSmallerThanScreen = (size: ScreenSize) => {\n\tconst pixels = getScreenSizeInPixels(size);\n\treturn window.innerWidth < pixels;\n};\n\nexport const isBetweenScreens = (\n\tsmallSize: ScreenSize,\n\tbigSize: ScreenSize\n) => {\n\treturn isBiggerThanScreen(smallSize) && isSmallerThanScreen(bigSize);\n};\n\nexport const isTouchDevice = () =>\n\t!!window.matchMedia('(pointer: coarse)').matches;\nexport const isMobile = () => isTouchDevice() || isSmallerThanScreen('tablet');\nexport const isTablet = () => isBetweenScreens('tablet', 'desktop-xs');\nexport const isDesktop = () => isBiggerThanScreen('desktop-xs');\n"],"version":3}
|
|
@@ -456,6 +456,16 @@ const headset = `<?xml version="1.0" encoding="UTF-8"?>
|
|
|
456
456
|
</g>
|
|
457
457
|
</svg>`;
|
|
458
458
|
|
|
459
|
+
const hidden = `<?xml version="1.0" encoding="UTF-8"?>
|
|
460
|
+
<svg width="1em" height="1em" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
461
|
+
<title>⚛️ Atoms/icons/hidden</title>
|
|
462
|
+
<g id="⚛️-Atoms/icons/hidden" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
|
463
|
+
<rect id="Bounding-box" x="0" y="0" width="16" height="16"></rect>
|
|
464
|
+
<path d="M14.7071068,1.29289322 C15.0976311,1.68341751 15.0976311,2.31658249 14.7071068,2.70710678 L2.70710678,14.7071068 C2.31658249,15.0976311 1.68341751,15.0976311 1.29289322,14.7071068 C0.902368927,14.3165825 0.902368927,13.6834175 1.29289322,13.2928932 L3.22012637,11.3647541 C2.09564155,10.5486442 1.0222661,9.42705952 0,8 C2.38781467,4.66666667 5.05448133,3 8,3 C9.02632304,3 10.0187914,3.20234541 10.9774052,3.60703622 L13.2928932,1.29289322 C13.6834175,0.902368927 14.3165825,0.902368927 14.7071068,1.29289322 Z M16,8 C13.6121853,11.3333333 10.9455187,13 8,13 C7.5104047,13 7.02851355,12.9539532 6.55432654,12.8618595 L8.4500231,10.9664714 C9.74659633,10.7714264 10.7714264,9.74659633 10.9664714,8.4500231 L13.8738442,5.54059418 C14.6055596,6.22294655 15.3142782,7.04274849 16,8 Z M8,5 C6.34314575,5 5,6.34314575 5,8 C5,8.46287587 5.10482952,8.90126749 5.29204249,9.29272878 L6.06747557,8.51704125 C6.02346212,8.35211457 6,8.17879722 6,8 C6,6.8954305 6.8954305,6 8,6 C8.17879722,6 8.35211457,6.02346212 8.51704125,6.06747557 L9.29272878,5.29204249 C8.90126749,5.10482952 8.46287587,5 8,5 Z" id="Combined-Shape" fill="currentColor"></path>
|
|
465
|
+
</g>
|
|
466
|
+
</svg>
|
|
467
|
+
`;
|
|
468
|
+
|
|
459
469
|
const iDeal = `<?xml version="1.0" encoding="UTF-8"?>
|
|
460
470
|
<svg width="1em" height="1em" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
461
471
|
<title>⚛️ Atoms/icons/Socials/iDeal</title>
|
|
@@ -1043,6 +1053,7 @@ const icons = {
|
|
|
1043
1053
|
grid,
|
|
1044
1054
|
hashtag,
|
|
1045
1055
|
headset,
|
|
1056
|
+
hidden,
|
|
1046
1057
|
iDeal,
|
|
1047
1058
|
integration,
|
|
1048
1059
|
list,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"p-button.p-icon.p-loader.entry.cjs.js","mappings":"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","names":["h","Host"],"sources":["src/utils/icons.ts","src/components/atoms/button/button.component.scss?tag=p-button","src/components/atoms/button/button.component.tsx","src/components/atoms/icon/icon.component.scss?tag=p-icon","src/components/atoms/icon/icon.component.tsx","src/components/atoms/loader/loader.component.scss?tag=p-loader&encapsulation=shadow","src/components/atoms/loader/loader.component.tsx"],"sourcesContent":["import arrow from '../assets/icons/arrow.svg';\nimport attachment from '../assets/icons/attachment.svg';\nimport bread from '../assets/icons/bread.svg';\nimport calendar from '../assets/icons/calendar.svg';\nimport camera from '../assets/icons/camera.svg';\nimport car from '../assets/icons/car.svg';\nimport checklist from '../assets/icons/checklist.svg';\nimport checkmark from '../assets/icons/checkmark.svg';\nimport chevron from '../assets/icons/chevron.svg';\nimport chevrons from '../assets/icons/chevrons.svg';\nimport clock from '../assets/icons/clock.svg';\nimport cogs from '../assets/icons/cogs.svg';\nimport colleagues from '../assets/icons/colleagues.svg';\nimport comment from '../assets/icons/comment.svg';\nimport companies from '../assets/icons/companies.svg';\nimport company from '../assets/icons/company.svg';\nimport deactivate from '../assets/icons/deactivate.svg';\nimport document from '../assets/icons/document.svg';\nimport download from '../assets/icons/download.svg';\nimport envelope from '../assets/icons/envelope.svg';\nimport explanation from '../assets/icons/explanation.svg';\nimport eye from '../assets/icons/eye.svg';\nimport faPiggy from '../assets/icons/fa/piggy.svg';\nimport filter from '../assets/icons/filter.svg';\nimport folder from '../assets/icons/folder.svg';\nimport formula from '../assets/icons/formula.svg';\nimport grid from '../assets/icons/grid.svg';\nimport hashtag from '../assets/icons/hashtag.svg';\nimport headset from '../assets/icons/headset.svg';\nimport iDeal from '../assets/icons/iDeal.svg';\nimport integration from '../assets/icons/integration.svg';\nimport list from '../assets/icons/list.svg';\nimport location from '../assets/icons/location.svg';\nimport megaphone from '../assets/icons/megaphone.svg';\nimport menu from '../assets/icons/menu.svg';\nimport minus from '../assets/icons/minus.svg';\nimport more from '../assets/icons/more.svg';\nimport negative from '../assets/icons/negative.svg';\nimport notification from '../assets/icons/notification.svg';\nimport pagination from '../assets/icons/pagination.svg';\nimport payment from '../assets/icons/payment.svg';\nimport pencil from '../assets/icons/pencil.svg';\nimport person from '../assets/icons/person.svg';\nimport plan from '../assets/icons/plan.svg';\nimport plus from '../assets/icons/plus.svg';\nimport question from '../assets/icons/question.svg';\nimport receipt from '../assets/icons/receipt.svg';\nimport reload from '../assets/icons/reload.svg';\nimport report from '../assets/icons/report.svg';\nimport search from '../assets/icons/search.svg';\nimport settings from '../assets/icons/settings.svg';\nimport sick from '../assets/icons/sick.svg';\nimport signout from '../assets/icons/signout.svg';\nimport switchIcon from '../assets/icons/switch.svg';\nimport tachometer from '../assets/icons/tachometer.svg';\nimport task from '../assets/icons/task.svg';\nimport template from '../assets/icons/template.svg';\nimport tool from '../assets/icons/tool.svg';\nimport trash from '../assets/icons/trash.svg';\nimport turn from '../assets/icons/turn.svg';\nimport upload from '../assets/icons/upload.svg';\nimport warning from '../assets/icons/warning.svg';\n\nexport default {\n\tarrow,\n\tattachment,\n\tbread,\n\tcalendar,\n\tcamera,\n\tcar,\n\tchecklist,\n\tcheckmark,\n\tchevron,\n\tchevrons,\n\tclock,\n\tcolleagues,\n\tcogs,\n\tcomment,\n\tcompanies,\n\tcompany,\n\tdeactivate,\n\tdocument,\n\tdownload,\n\tenvelope,\n\texplanation,\n\teye,\n\tfaPiggy,\n\tfilter,\n\tfolder,\n\tformula,\n\tgrid,\n\thashtag,\n\theadset,\n\tiDeal,\n\tintegration,\n\tlist,\n\tlocation,\n\tmegaphone,\n\tmenu,\n\tminus,\n\tmore,\n\tnegative,\n\tnotification,\n\tpagination,\n\tpayment,\n\tpencil,\n\tperson,\n\tplan,\n\tplus,\n\tquestion,\n\treload,\n\treceipt,\n\treport,\n\tsearch,\n\tsettings,\n\tsick,\n\tsignout,\n\tswitch: switchIcon,\n\ttachometer,\n\ttask,\n\ttemplate,\n\ttool,\n\ttrash,\n\tturn,\n\tupload,\n\twarning,\n};\n","p-button {\n\t@apply flex h-10 w-auto text-base;\n\n\tbutton,\n\ta {\n\t\toutline: 0;\n\t\tborder: 0;\n\t\t@apply h-full w-full;\n\t\t@apply rounded-large #{!important};\n\t\t@apply font-semibold leading-4;\n\t\t@apply flex items-center justify-center;\n\t\t@apply cursor-pointer text-base;\n\n\t\twill-change: filter;\n\n\t\t> p-loader {\n\t\t\t@apply ml-2;\n\t\t}\n\n\t\t// Icon positions\n\t\t&.icon-position-end {\n\t\t\t> p-icon:not(.chevron) {\n\t\t\t\t@apply ml-2;\n\t\t\t}\n\t\t}\n\n\t\t&.icon-position-start {\n\t\t\t> p-icon:not(.chevron) {\n\t\t\t\t@apply mr-2;\n\t\t\t}\n\t\t}\n\n\t\t// Variants\n\t\t&.variant-primary,\n\t\t&.variant-secondary {\n\t\t\t@apply px-4 filter;\n\t\t}\n\n\t\t&.variant-primary,\n\t\t&.variant-secondary {\n\t\t\t&:active,\n\t\t\t&.active {\n\t\t\t\t@apply drop-shadow-transparent;\n\t\t\t}\n\t\t}\n\n\t\t&.variant-primary {\n\t\t\t@apply bg-indigo text-white;\n\n\t\t\t&:active,\n\t\t\t&.active {\n\t\t\t\t&:not([disabled]) {\n\t\t\t\t\t@apply bg-indigo-dark;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media (pointer: fine) {\n\t\t\t\t&:hover:not([disabled]) {\n\t\t\t\t\t@apply drop-shadow-button-primary-hover;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.variant-secondary {\n\t\t\t@apply border border-solid border-mystic-dark #{!important};\n\t\t\t@apply bg-white text-storm;\n\n\t\t\t&:active,\n\t\t\t&.active {\n\t\t\t\t&:not([disabled]) {\n\t\t\t\t\t@apply bg-mystic;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media (pointer: fine) {\n\t\t\t\t&:hover:not([disabled]) {\n\t\t\t\t\t@apply drop-shadow-button-secondary-hover;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.variant-text {\n\t\t\t@apply text-indigo;\n\n\t\t\t&.has-underline {\n\t\t\t\t@apply underline underline-offset-1;\n\t\t\t}\n\n\t\t\t&:hover:not([disabled]) {\n\t\t\t\t@apply text-indigo-dark;\n\t\t\t}\n\t\t}\n\n\t\t&[disabled] {\n\t\t\t@apply opacity-40;\n\t\t}\n\n\t\t&.should-inherit-text {\n\t\t\tcolor: inherit #{!important};\n\t\t\tfont-size: inherit #{!important};\n\t\t\tfont-weight: inherit #{!important};\n\t\t}\n\t}\n\n\t// chevron\n\t&.has-chevron {\n\t\ta,\n\t\tbutton {\n\t\t\t&.chevron-position-start {\n\t\t\t\t@apply pl-2;\n\n\t\t\t\t> p-icon.chevron {\n\t\t\t\t\t@apply mr-2;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.chevron-position-end {\n\t\t\t\t@apply pr-2;\n\n\t\t\t\t> p-icon.chevron {\n\t\t\t\t\t@apply ml-2;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.variant-secondary:hover:not([disabled]) p-icon:last-child {\n\t\t\t\t@apply text-indigo;\n\t\t\t}\n\t\t}\n\t}\n\n\t&.has-icon-only {\n\t\t@apply w-10;\n\n\t\ta,\n\t\tbutton {\n\t\t\t@apply p-0;\n\n\t\t\t> p-icon:first-child {\n\t\t\t\t@apply mx-0;\n\t\t\t}\n\n\t\t\t> p-loader {\n\t\t\t\t@apply ml-0;\n\t\t\t}\n\t\t}\n\n\t\t&.has-chevron {\n\t\t\t@apply w-auto;\n\n\t\t\ta,\n\t\t\tbutton {\n\t\t\t\t&.chevron-position-start {\n\t\t\t\t\t@apply pr-2;\n\t\t\t\t}\n\n\t\t\t\t&.chevron-position-end {\n\t\t\t\t\t@apply pl-2;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// sizes\n\t&.size-small {\n\t\t@apply h-8;\n\n\t\tbutton,\n\t\ta {\n\t\t\t@apply text-sm;\n\n\t\t\t> p-icon {\n\t\t\t\t@apply text-base;\n\t\t\t}\n\t\t}\n\n\t\t&.has-icon-only {\n\t\t\t@apply w-8;\n\n\t\t\t&.has-chevron {\n\t\t\t\t@apply w-auto;\n\t\t\t}\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n} from '@stencil/core';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../icon/icon.component';\n\n@Component({\n\ttag: 'p-button',\n\tstyleUrl: 'button.component.scss',\n\t// shadow: true,\n})\nexport class Button {\n\t/**\n\t * The variant of the button\n\t */\n\t@Prop() variant: 'primary' | 'secondary' | 'text' = 'primary';\n\n\t/**\n\t * Wether the text variant has underline\n\t */\n\t@Prop() underline: boolean = false;\n\n\t/**\n\t * Href in case of \"text\" version\n\t */\n\t@Prop() href: string;\n\n\t/**\n\t * Target in case of \"text\" version\n\t */\n\t@Prop() target: string;\n\n\t/**\n\t * The size of the button\n\t */\n\t@Prop() size: 'small' | 'medium' = 'medium';\n\n /**\n * The type of the button\n */\n @Prop() type: 'button' | 'submit' = 'button';\n\n\t/**\n\t * Wether to show a loader or not\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * Wether to show a chevron or not\n\t */\n\t@Prop() chevron: boolean | 'up' | 'down' = false;\n\n\t/**\n\t * Chevron position\n\t */\n\t@Prop() chevronPosition: 'start' | 'end' = 'end';\n\n\t/**\n\t * Wether the button is disabled\n\t */\n\t@Prop() disabled: boolean = false;\n\n\t/**\n\t * Icon to show on the button\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * Wether the button is icon only\n\t */\n\t@Prop() iconOnly: boolean = false;\n\n\t/**\n\t * Icon position\n\t */\n\t@Prop() iconPosition: 'start' | 'end' = 'end';\n\n\t/**\n\t * Icon flip\n\t */\n\t@Prop() iconFlip: IconFlipOptions;\n\n\t/**\n\t * Icon rotate\n\t */\n\t@Prop() iconRotate: RotateOptions;\n\n\t/**\n\t * Wether the button should inherit text styles\n\t */\n\t@Prop() inheritText: boolean = false;\n\n\t/**\n\t * Button click event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tonClick: EventEmitter<MouseEvent>;\n\n\trender() {\n\t\tlet loaderColor: 'white' | 'storm' | 'indigo' = 'white';\n\t\tswitch (this.variant) {\n\t\t\tcase 'secondary':\n\t\t\t\tloaderColor = 'storm';\n\t\t\t\tbreak;\n\t\t\tcase 'text':\n\t\t\t\tloaderColor = 'indigo';\n\t\t\t\tbreak;\n\t\t}\n\n\t\tconst VariableTag = this.variant === 'text' ? 'a' : 'button';\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-button size-${this.size} ${\n\t\t\t\t\tthis.iconOnly && 'has-icon-only'\n\t\t\t\t} ${this.chevron && 'has-chevron'}`}\n\t\t\t>\n\t\t\t\t<VariableTag\n\t\t\t\t\tclass={`variant-${this.variant} icon-position-${\n\t\t\t\t\t\tthis.iconPosition\n\t\t\t\t\t} chevron-position-${this.chevronPosition} ${\n\t\t\t\t\t\tthis.inheritText && 'should-inherit-text'\n\t\t\t\t\t} ${this.underline && 'has-underline'}`}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\thref={this.href}\n type={this.variant !== 'text' ? this.type : undefined}\n\t\t\t\t\ttarget={this.target}\n\t\t\t\t>\n\t\t\t\t\t{this.chevron && this.chevronPosition === 'start' && (\n\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\tclass=\"chevron\"\n\t\t\t\t\t\t\tvariant=\"chevron\"\n\t\t\t\t\t\t\trotate={this.chevron === 'up' ? 180 : 0}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t\tthis.iconPosition === 'start' &&\n\t\t\t\t\t\t!(this.iconOnly && this.loading) &&\n\t\t\t\t\t\tthis._getIcon()}\n\n\t\t\t\t\t<slot />\n\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t\tthis.iconPosition === 'end' &&\n\t\t\t\t\t\t!(this.iconOnly && this.loading) &&\n\t\t\t\t\t\tthis._getIcon()}\n\n\t\t\t\t\t{this.loading && <p-loader color={loaderColor} />}\n\n\t\t\t\t\t{this.chevron && this.chevronPosition === 'end' && (\n\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\tclass=\"chevron\"\n\t\t\t\t\t\t\tvariant=\"chevron\"\n\t\t\t\t\t\t\trotate={this.chevron === 'up' ? 180 : 0}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</VariableTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { capture: true })\n\thandleClick(ev: MouseEvent) {\n\t\tif (this.loading || this.disabled) {\n\t\t\tev.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.onClick.emit(ev);\n\t}\n\n\tprivate _getIcon() {\n\t\tif (!this.icon) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn (\n\t\t\t<p-icon\n\t\t\t\tvariant={this.icon}\n\t\t\t\tflip={this.iconFlip}\n\t\t\t\trotate={this.iconRotate}\n\t\t\t/>\n\t\t);\n\t}\n}\n",":host {\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { RotateOptions, TextSizeOptions } from '../../../types/tailwind';\nimport icons from '../../../utils/icons';\n\nexport type IconVariant = keyof typeof icons;\nexport type IconFlipOptions = 'horizontal' | 'vertical';\n\n@Component({\n\ttag: 'p-icon',\n\tstyleUrl: 'icon.component.scss',\n\t// shadow: true,\n})\nexport class Icon {\n\t/**\n\t * The icon the be displayed\n\t */\n\t@Prop() variant!: IconVariant;\n\n\t/**\n\t * The size of the icon, using tailwind sizes\n\t */\n\t@Prop() size: TextSizeOptions = 'auto';\n\n\t/**\n\t * Wether to rotate the icon x degrees\n\t */\n\t@Prop() rotate: RotateOptions = 0;\n\n\t/**\n\t * Wether to flip the icon horizontally or vertically\n\t */\n\t@Prop() flip: IconFlipOptions = null;\n\n\trender() {\n\t\tconst icon = icons[this.variant];\n\n\t\tconst styles = {\n\t\t\t'p-icon flex': true,\n\t\t\t'text-auto': this.size === 'auto',\n\t\t\t'text-xxs': this.size === 'xxs',\n\t\t\t'text-xs': this.size === 'xs',\n\t\t\t'text-sm': this.size === 'sm',\n\t\t\t'text-base': this.size === 'base',\n\t\t\t'text-lg': this.size === 'lg',\n\t\t\t'text-xl': this.size === 'xl',\n\t\t\t'text-2xl': this.size === '2xl',\n\t\t\t'text-3xl': this.size === '3xl',\n\t\t\t'text-4xl': this.size === '4xl',\n\t\t\t'text-5xl': this.size === '5xl',\n\t\t\t'text-6xl': this.size === '6xl',\n\t\t\ttransform: !!this.rotate || !!this.flip,\n\t\t\t'scale-x-flip': this.flip === 'horizontal',\n\t\t\t'scale-y-flip': this.flip === 'vertical',\n\t\t\t'rotate-0': this.rotate === 0,\n\t\t\t'rotate-25': this.rotate === 25,\n\t\t\t'rotate-45': this.rotate === 45,\n\t\t\t'rotate-90': this.rotate === 90,\n\t\t\t'rotate-135': this.rotate === 135,\n\t\t\t'rotate-180': this.rotate === 180,\n\t\t\t'rotate-225': this.rotate === 225,\n\t\t\t'rotate-270': this.rotate === 270,\n\t\t\t'rotate-315': this.rotate === 315,\n\t\t\t'-rotate-0': this.rotate === -0,\n\t\t\t'-rotate-25': this.rotate === -25,\n\t\t\t'-rotate-45': this.rotate === -45,\n\t\t\t'-rotate-90': this.rotate === -90,\n\t\t\t'-rotate-135': this.rotate === -135,\n\t\t\t'-rotate-180': this.rotate === -180,\n\t\t\t'-rotate-225': this.rotate === -225,\n\t\t\t'-rotate-270': this.rotate === -270,\n\t\t\t'-rotate-315': this.rotate === -315,\n\t\t};\n\n\t\treturn <Host class={styles} innerHTML={icon}></Host>;\n\t}\n}\n",":host {\n\t.loader {\n\t\t@apply inline-block h-[1em] w-[1em] rounded-round;\n\t\t@apply border-2 border-solid border-indigo-light border-t-indigo;\n\t\tanimation: 500ms spin linear infinite;\n\n\t\twill-change: transform;\n\n\t\t&.color-storm {\n\t\t\t@apply border-storm-light/40 border-t-storm #{!important};\n\t\t}\n\n\t\t&.color-white {\n\t\t\t@apply border-indigo-light/40 border-t-white #{!important};\n\t\t}\n\t}\n\n\t.loading-screen {\n\t\t@apply w-screen-safe h-screen-safe fixed top-0 left-0;\n\t\t@apply flex items-center justify-center;\n\t\t@apply bg-mystic;\n\n\t\tz-index: 1001;\n\n\t\t.content {\n\t\t\t@apply max-w-xs;\n\n\t\t\t.loader-wrapper {\n\t\t\t\t@apply flex w-full justify-center;\n\n\t\t\t\t.loader {\n\t\t\t\t\t@apply text-4xl;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n:host(.variant-ghost) {\n\t@apply box-border block;\n\n\twill-change: background, background-position-x, background-color;\n\n\tmin-height: 1em;\n\tmin-width: 1em;\n\n\t--loading-bg: #f7fafc;\n\t--loading-stripe: rgba(252, 253, 254, 1);\n\n\tbackground-color: var(--loading-bg);\n\tbackground: linear-gradient(\n\t\t\t100deg,\n\t\t\trgba(255, 255, 255, 0) 40%,\n\t\t\tvar(--loading-stripe) 50%,\n\t\t\trgba(255, 255, 255, 0) 60%\n\t\t)\n\t\tvar(--loading-bg);\n\tbackground-size: 200% 100%;\n\tbackground-position-x: 180%;\n\tanimation: 1s loading ease-in-out infinite;\n}\n\n@keyframes loading {\n\tto {\n\t\tbackground-position-x: -20%;\n\t}\n}\n\n@keyframes spin {\n\t100% {\n\t\ttransform: rotate(1turn);\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { Observable, Subscription } from 'rxjs';\n\n@Component({\n\ttag: 'p-loader',\n\tstyleUrl: 'loader.component.scss',\n\tshadow: true,\n})\nexport class Loader {\n\t/**\n\t * Wether to show or hide the loader\n\t */\n\t@Prop() show: boolean | Observable<boolean> = true;\n\n\t/**\n\t * Variant of loader\n\t */\n\t@Prop() variant:\n\t\t| 'inline'\n\t\t| 'full-width'\n\t\t| 'full-screen'\n\t\t| 'modal'\n\t\t| 'ghost' = 'inline';\n\n\t/**\n\t * Color of the loader\n\t */\n\t@Prop() color: 'indigo' | 'white' | 'storm' = 'indigo';\n\n\t/**\n\t * !NOT IMPLEMENTED! Modal title for modal variant\n\t */\n\t@Prop() modalTitle: string;\n\n\t/**\n\t * !NOT IMPLEMENTED! Modal description for modal variant\n\t */\n\t@Prop() modalDescription: string;\n\n\tprivate _show = this.show;\n\tprivate _showSubscriber: Subscription;\n\n\tprivate _loader = (<div class={`loader color-${this.color}`}></div>);\n\n\tcomponentWillRender() {\n\t\tthis._checkShow();\n\t}\n\n\tcomponentShouldUpdate() {\n\t\tthis._checkShow();\n\t}\n\n\trender() {\n\t\tif (!this._show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.variant === 'ghost') {\n\t\t\treturn <Host class=\"p-loader variant-ghost\"></Host>;\n\t\t}\n\n\t\tif (this.variant === 'full-screen') {\n\t\t\treturn (\n\t\t\t\t<Host class=\"p-loader variant-full-screen\">\n\t\t\t\t\t<div class=\"loading-screen\">\n\t\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t\t<slot />\n\n\t\t\t\t\t\t\t<div class=\"loader-wrapper\">{this._loader}</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</Host>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-loader variant-default flex ${\n\t\t\t\t\tthis.variant === 'full-width' &&\n\t\t\t\t\t'w-full flex justify-center text-4xl'\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t{this._loader}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _checkShow() {\n\t\tif (this._showSubscriber) {\n\t\t\tthis._showSubscriber.unsubscribe();\n\t\t\tthis._showSubscriber = null;\n\t\t}\n\n\t\tif (typeof this.show !== 'boolean') {\n\t\t\tthis._showSubscriber = this.show?.subscribe(\n\t\t\t\t(show) => (this._show = show)\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show = this.show;\n\t}\n}\n"],"version":3}
|
|
1
|
+
{"file":"p-button.p-icon.p-loader.entry.cjs.js","mappings":"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","names":["h","Host"],"sources":["src/utils/icons.ts","src/components/atoms/button/button.component.scss?tag=p-button","src/components/atoms/button/button.component.tsx","src/components/atoms/icon/icon.component.scss?tag=p-icon","src/components/atoms/icon/icon.component.tsx","src/components/atoms/loader/loader.component.scss?tag=p-loader&encapsulation=shadow","src/components/atoms/loader/loader.component.tsx"],"sourcesContent":["import arrow from '../assets/icons/arrow.svg';\nimport attachment from '../assets/icons/attachment.svg';\nimport bread from '../assets/icons/bread.svg';\nimport calendar from '../assets/icons/calendar.svg';\nimport camera from '../assets/icons/camera.svg';\nimport car from '../assets/icons/car.svg';\nimport checklist from '../assets/icons/checklist.svg';\nimport checkmark from '../assets/icons/checkmark.svg';\nimport chevron from '../assets/icons/chevron.svg';\nimport chevrons from '../assets/icons/chevrons.svg';\nimport clock from '../assets/icons/clock.svg';\nimport cogs from '../assets/icons/cogs.svg';\nimport colleagues from '../assets/icons/colleagues.svg';\nimport comment from '../assets/icons/comment.svg';\nimport companies from '../assets/icons/companies.svg';\nimport company from '../assets/icons/company.svg';\nimport deactivate from '../assets/icons/deactivate.svg';\nimport document from '../assets/icons/document.svg';\nimport download from '../assets/icons/download.svg';\nimport envelope from '../assets/icons/envelope.svg';\nimport explanation from '../assets/icons/explanation.svg';\nimport eye from '../assets/icons/eye.svg';\nimport faPiggy from '../assets/icons/fa/piggy.svg';\nimport filter from '../assets/icons/filter.svg';\nimport folder from '../assets/icons/folder.svg';\nimport formula from '../assets/icons/formula.svg';\nimport grid from '../assets/icons/grid.svg';\nimport hashtag from '../assets/icons/hashtag.svg';\nimport headset from '../assets/icons/headset.svg';\nimport hidden from '../assets/icons/hidden.svg';\nimport iDeal from '../assets/icons/iDeal.svg';\nimport integration from '../assets/icons/integration.svg';\nimport list from '../assets/icons/list.svg';\nimport location from '../assets/icons/location.svg';\nimport megaphone from '../assets/icons/megaphone.svg';\nimport menu from '../assets/icons/menu.svg';\nimport minus from '../assets/icons/minus.svg';\nimport more from '../assets/icons/more.svg';\nimport negative from '../assets/icons/negative.svg';\nimport notification from '../assets/icons/notification.svg';\nimport pagination from '../assets/icons/pagination.svg';\nimport payment from '../assets/icons/payment.svg';\nimport pencil from '../assets/icons/pencil.svg';\nimport person from '../assets/icons/person.svg';\nimport plan from '../assets/icons/plan.svg';\nimport plus from '../assets/icons/plus.svg';\nimport question from '../assets/icons/question.svg';\nimport receipt from '../assets/icons/receipt.svg';\nimport reload from '../assets/icons/reload.svg';\nimport report from '../assets/icons/report.svg';\nimport search from '../assets/icons/search.svg';\nimport settings from '../assets/icons/settings.svg';\nimport sick from '../assets/icons/sick.svg';\nimport signout from '../assets/icons/signout.svg';\nimport switchIcon from '../assets/icons/switch.svg';\nimport tachometer from '../assets/icons/tachometer.svg';\nimport task from '../assets/icons/task.svg';\nimport template from '../assets/icons/template.svg';\nimport tool from '../assets/icons/tool.svg';\nimport trash from '../assets/icons/trash.svg';\nimport turn from '../assets/icons/turn.svg';\nimport upload from '../assets/icons/upload.svg';\nimport warning from '../assets/icons/warning.svg';\n\nexport default {\n\tarrow,\n\tattachment,\n\tbread,\n\tcalendar,\n\tcamera,\n\tcar,\n\tchecklist,\n\tcheckmark,\n\tchevron,\n\tchevrons,\n\tclock,\n\tcolleagues,\n\tcogs,\n\tcomment,\n\tcompanies,\n\tcompany,\n\tdeactivate,\n\tdocument,\n\tdownload,\n\tenvelope,\n\texplanation,\n\teye,\n\tfaPiggy,\n\tfilter,\n\tfolder,\n\tformula,\n\tgrid,\n\thashtag,\n\theadset,\n\thidden,\n\tiDeal,\n\tintegration,\n\tlist,\n\tlocation,\n\tmegaphone,\n\tmenu,\n\tminus,\n\tmore,\n\tnegative,\n\tnotification,\n\tpagination,\n\tpayment,\n\tpencil,\n\tperson,\n\tplan,\n\tplus,\n\tquestion,\n\treload,\n\treceipt,\n\treport,\n\tsearch,\n\tsettings,\n\tsick,\n\tsignout,\n\tswitch: switchIcon,\n\ttachometer,\n\ttask,\n\ttemplate,\n\ttool,\n\ttrash,\n\tturn,\n\tupload,\n\twarning,\n};\n","p-button {\n\t@apply flex h-10 w-auto text-base;\n\n\tbutton,\n\ta {\n\t\toutline: 0;\n\t\tborder: 0;\n\t\t@apply h-full w-full;\n\t\t@apply rounded-large #{!important};\n\t\t@apply font-semibold leading-4;\n\t\t@apply flex items-center justify-center;\n\t\t@apply cursor-pointer text-base;\n\n\t\twill-change: filter;\n\n\t\t> p-loader {\n\t\t\t@apply ml-2;\n\t\t}\n\n\t\t// Icon positions\n\t\t&.icon-position-end {\n\t\t\t> p-icon:not(.chevron) {\n\t\t\t\t@apply ml-2;\n\t\t\t}\n\t\t}\n\n\t\t&.icon-position-start {\n\t\t\t> p-icon:not(.chevron) {\n\t\t\t\t@apply mr-2;\n\t\t\t}\n\t\t}\n\n\t\t// Variants\n\t\t&.variant-primary,\n\t\t&.variant-secondary {\n\t\t\t@apply px-4 filter;\n\t\t}\n\n\t\t&.variant-primary,\n\t\t&.variant-secondary {\n\t\t\t&:active,\n\t\t\t&.active {\n\t\t\t\t@apply drop-shadow-transparent;\n\t\t\t}\n\t\t}\n\n\t\t&.variant-primary {\n\t\t\t@apply bg-indigo text-white;\n\n\t\t\t&:active,\n\t\t\t&.active {\n\t\t\t\t&:not([disabled]) {\n\t\t\t\t\t@apply bg-indigo-dark;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media (pointer: fine) {\n\t\t\t\t&:hover:not([disabled]) {\n\t\t\t\t\t@apply drop-shadow-button-primary-hover;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.variant-secondary {\n\t\t\t@apply border border-solid border-mystic-dark #{!important};\n\t\t\t@apply bg-white text-storm;\n\n\t\t\t&:active,\n\t\t\t&.active {\n\t\t\t\t&:not([disabled]) {\n\t\t\t\t\t@apply bg-mystic;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media (pointer: fine) {\n\t\t\t\t&:hover:not([disabled]) {\n\t\t\t\t\t@apply drop-shadow-button-secondary-hover;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.variant-text {\n\t\t\t@apply text-indigo;\n\n\t\t\t&.has-underline {\n\t\t\t\t@apply underline underline-offset-1;\n\t\t\t}\n\n\t\t\t&:hover:not([disabled]) {\n\t\t\t\t@apply text-indigo-dark;\n\t\t\t}\n\t\t}\n\n\t\t&[disabled] {\n\t\t\t@apply opacity-40;\n\t\t}\n\n\t\t&.should-inherit-text {\n\t\t\tcolor: inherit #{!important};\n\t\t\tfont-size: inherit #{!important};\n\t\t\tfont-weight: inherit #{!important};\n\t\t}\n\t}\n\n\t// chevron\n\t&.has-chevron {\n\t\ta,\n\t\tbutton {\n\t\t\t&.chevron-position-start {\n\t\t\t\t@apply pl-2;\n\n\t\t\t\t> p-icon.chevron {\n\t\t\t\t\t@apply mr-2;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.chevron-position-end {\n\t\t\t\t@apply pr-2;\n\n\t\t\t\t> p-icon.chevron {\n\t\t\t\t\t@apply ml-2;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.variant-secondary:hover:not([disabled]) p-icon:last-child {\n\t\t\t\t@apply text-indigo;\n\t\t\t}\n\t\t}\n\t}\n\n\t&.has-icon-only {\n\t\t@apply w-10;\n\n\t\ta,\n\t\tbutton {\n\t\t\t@apply p-0;\n\n\t\t\t> p-icon:first-child {\n\t\t\t\t@apply mx-0;\n\t\t\t}\n\n\t\t\t> p-loader {\n\t\t\t\t@apply ml-0;\n\t\t\t}\n\t\t}\n\n\t\t&.has-chevron {\n\t\t\t@apply w-auto;\n\n\t\t\ta,\n\t\t\tbutton {\n\t\t\t\t&.chevron-position-start {\n\t\t\t\t\t@apply pr-2;\n\t\t\t\t}\n\n\t\t\t\t&.chevron-position-end {\n\t\t\t\t\t@apply pl-2;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// sizes\n\t&.size-small {\n\t\t@apply h-8;\n\n\t\tbutton,\n\t\ta {\n\t\t\t@apply text-sm;\n\n\t\t\t> p-icon {\n\t\t\t\t@apply text-base;\n\t\t\t}\n\t\t}\n\n\t\t&.has-icon-only {\n\t\t\t@apply w-8;\n\n\t\t\t&.has-chevron {\n\t\t\t\t@apply w-auto;\n\t\t\t}\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n} from '@stencil/core';\nimport { RotateOptions } from '../../../types/tailwind';\nimport { IconFlipOptions, IconVariant } from '../icon/icon.component';\n\n@Component({\n\ttag: 'p-button',\n\tstyleUrl: 'button.component.scss',\n\t// shadow: true,\n})\nexport class Button {\n\t/**\n\t * The variant of the button\n\t */\n\t@Prop() variant: 'primary' | 'secondary' | 'text' = 'primary';\n\n\t/**\n\t * Wether the text variant has underline\n\t */\n\t@Prop() underline: boolean = false;\n\n\t/**\n\t * Href in case of \"text\" version\n\t */\n\t@Prop() href: string;\n\n\t/**\n\t * Target in case of \"text\" version\n\t */\n\t@Prop() target: string;\n\n\t/**\n\t * The size of the button\n\t */\n\t@Prop() size: 'small' | 'medium' = 'medium';\n\n /**\n * The type of the button\n */\n @Prop() type: 'button' | 'submit' = 'button';\n\n\t/**\n\t * Wether to show a loader or not\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * Wether to show a chevron or not\n\t */\n\t@Prop() chevron: boolean | 'up' | 'down' = false;\n\n\t/**\n\t * Chevron position\n\t */\n\t@Prop() chevronPosition: 'start' | 'end' = 'end';\n\n\t/**\n\t * Wether the button is disabled\n\t */\n\t@Prop() disabled: boolean = false;\n\n\t/**\n\t * Icon to show on the button\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * Wether the button is icon only\n\t */\n\t@Prop() iconOnly: boolean = false;\n\n\t/**\n\t * Icon position\n\t */\n\t@Prop() iconPosition: 'start' | 'end' = 'end';\n\n\t/**\n\t * Icon flip\n\t */\n\t@Prop() iconFlip: IconFlipOptions;\n\n\t/**\n\t * Icon rotate\n\t */\n\t@Prop() iconRotate: RotateOptions;\n\n\t/**\n\t * Wether the button should inherit text styles\n\t */\n\t@Prop() inheritText: boolean = false;\n\n\t/**\n\t * Button click event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tonClick: EventEmitter<MouseEvent>;\n\n\trender() {\n\t\tlet loaderColor: 'white' | 'storm' | 'indigo' = 'white';\n\t\tswitch (this.variant) {\n\t\t\tcase 'secondary':\n\t\t\t\tloaderColor = 'storm';\n\t\t\t\tbreak;\n\t\t\tcase 'text':\n\t\t\t\tloaderColor = 'indigo';\n\t\t\t\tbreak;\n\t\t}\n\n\t\tconst VariableTag = this.variant === 'text' ? 'a' : 'button';\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-button size-${this.size} ${\n\t\t\t\t\tthis.iconOnly && 'has-icon-only'\n\t\t\t\t} ${this.chevron && 'has-chevron'}`}\n\t\t\t>\n\t\t\t\t<VariableTag\n\t\t\t\t\tclass={`variant-${this.variant} icon-position-${\n\t\t\t\t\t\tthis.iconPosition\n\t\t\t\t\t} chevron-position-${this.chevronPosition} ${\n\t\t\t\t\t\tthis.inheritText && 'should-inherit-text'\n\t\t\t\t\t} ${this.underline && 'has-underline'}`}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\thref={this.href}\n type={this.variant !== 'text' ? this.type : undefined}\n\t\t\t\t\ttarget={this.target}\n\t\t\t\t>\n\t\t\t\t\t{this.chevron && this.chevronPosition === 'start' && (\n\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\tclass=\"chevron\"\n\t\t\t\t\t\t\tvariant=\"chevron\"\n\t\t\t\t\t\t\trotate={this.chevron === 'up' ? 180 : 0}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t\tthis.iconPosition === 'start' &&\n\t\t\t\t\t\t!(this.iconOnly && this.loading) &&\n\t\t\t\t\t\tthis._getIcon()}\n\n\t\t\t\t\t<slot />\n\n\t\t\t\t\t{this.icon &&\n\t\t\t\t\t\tthis.iconPosition === 'end' &&\n\t\t\t\t\t\t!(this.iconOnly && this.loading) &&\n\t\t\t\t\t\tthis._getIcon()}\n\n\t\t\t\t\t{this.loading && <p-loader color={loaderColor} />}\n\n\t\t\t\t\t{this.chevron && this.chevronPosition === 'end' && (\n\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\tclass=\"chevron\"\n\t\t\t\t\t\t\tvariant=\"chevron\"\n\t\t\t\t\t\t\trotate={this.chevron === 'up' ? 180 : 0}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</VariableTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { capture: true })\n\thandleClick(ev: MouseEvent) {\n\t\tif (this.loading || this.disabled) {\n\t\t\tev.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.onClick.emit(ev);\n\t}\n\n\tprivate _getIcon() {\n\t\tif (!this.icon) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn (\n\t\t\t<p-icon\n\t\t\t\tvariant={this.icon}\n\t\t\t\tflip={this.iconFlip}\n\t\t\t\trotate={this.iconRotate}\n\t\t\t/>\n\t\t);\n\t}\n}\n",":host {\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { RotateOptions, TextSizeOptions } from '../../../types/tailwind';\nimport icons from '../../../utils/icons';\n\nexport type IconVariant = keyof typeof icons;\nexport type IconFlipOptions = 'horizontal' | 'vertical';\n\n@Component({\n\ttag: 'p-icon',\n\tstyleUrl: 'icon.component.scss',\n\t// shadow: true,\n})\nexport class Icon {\n\t/**\n\t * The icon the be displayed\n\t */\n\t@Prop() variant!: IconVariant;\n\n\t/**\n\t * The size of the icon, using tailwind sizes\n\t */\n\t@Prop() size: TextSizeOptions = 'auto';\n\n\t/**\n\t * Wether to rotate the icon x degrees\n\t */\n\t@Prop() rotate: RotateOptions = 0;\n\n\t/**\n\t * Wether to flip the icon horizontally or vertically\n\t */\n\t@Prop() flip: IconFlipOptions = null;\n\n\trender() {\n\t\tconst icon = icons[this.variant];\n\n\t\tconst styles = {\n\t\t\t'p-icon flex': true,\n\t\t\t'text-auto': this.size === 'auto',\n\t\t\t'text-xxs': this.size === 'xxs',\n\t\t\t'text-xs': this.size === 'xs',\n\t\t\t'text-sm': this.size === 'sm',\n\t\t\t'text-base': this.size === 'base',\n\t\t\t'text-lg': this.size === 'lg',\n\t\t\t'text-xl': this.size === 'xl',\n\t\t\t'text-2xl': this.size === '2xl',\n\t\t\t'text-3xl': this.size === '3xl',\n\t\t\t'text-4xl': this.size === '4xl',\n\t\t\t'text-5xl': this.size === '5xl',\n\t\t\t'text-6xl': this.size === '6xl',\n\t\t\ttransform: !!this.rotate || !!this.flip,\n\t\t\t'scale-x-flip': this.flip === 'horizontal',\n\t\t\t'scale-y-flip': this.flip === 'vertical',\n\t\t\t'rotate-0': this.rotate === 0,\n\t\t\t'rotate-25': this.rotate === 25,\n\t\t\t'rotate-45': this.rotate === 45,\n\t\t\t'rotate-90': this.rotate === 90,\n\t\t\t'rotate-135': this.rotate === 135,\n\t\t\t'rotate-180': this.rotate === 180,\n\t\t\t'rotate-225': this.rotate === 225,\n\t\t\t'rotate-270': this.rotate === 270,\n\t\t\t'rotate-315': this.rotate === 315,\n\t\t\t'-rotate-0': this.rotate === -0,\n\t\t\t'-rotate-25': this.rotate === -25,\n\t\t\t'-rotate-45': this.rotate === -45,\n\t\t\t'-rotate-90': this.rotate === -90,\n\t\t\t'-rotate-135': this.rotate === -135,\n\t\t\t'-rotate-180': this.rotate === -180,\n\t\t\t'-rotate-225': this.rotate === -225,\n\t\t\t'-rotate-270': this.rotate === -270,\n\t\t\t'-rotate-315': this.rotate === -315,\n\t\t};\n\n\t\treturn <Host class={styles} innerHTML={icon}></Host>;\n\t}\n}\n",":host {\n\t.loader {\n\t\t@apply inline-block h-[1em] w-[1em] rounded-round;\n\t\t@apply border-2 border-solid border-indigo-light border-t-indigo;\n\t\tanimation: 500ms spin linear infinite;\n\n\t\twill-change: transform;\n\n\t\t&.color-storm {\n\t\t\t@apply border-storm-light/40 border-t-storm #{!important};\n\t\t}\n\n\t\t&.color-white {\n\t\t\t@apply border-indigo-light/40 border-t-white #{!important};\n\t\t}\n\t}\n\n\t.loading-screen {\n\t\t@apply w-screen-safe h-screen-safe fixed top-0 left-0;\n\t\t@apply flex items-center justify-center;\n\t\t@apply bg-mystic;\n\n\t\tz-index: 1001;\n\n\t\t.content {\n\t\t\t@apply max-w-xs;\n\n\t\t\t.loader-wrapper {\n\t\t\t\t@apply flex w-full justify-center;\n\n\t\t\t\t.loader {\n\t\t\t\t\t@apply text-4xl;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n:host(.variant-ghost) {\n\t@apply box-border block;\n\n\twill-change: background, background-position-x, background-color;\n\n\tmin-height: 1em;\n\tmin-width: 1em;\n\n\t--loading-bg: #f7fafc;\n\t--loading-stripe: rgba(252, 253, 254, 1);\n\n\tbackground-color: var(--loading-bg);\n\tbackground: linear-gradient(\n\t\t\t100deg,\n\t\t\trgba(255, 255, 255, 0) 40%,\n\t\t\tvar(--loading-stripe) 50%,\n\t\t\trgba(255, 255, 255, 0) 60%\n\t\t)\n\t\tvar(--loading-bg);\n\tbackground-size: 200% 100%;\n\tbackground-position-x: 180%;\n\tanimation: 1s loading ease-in-out infinite;\n}\n\n@keyframes loading {\n\tto {\n\t\tbackground-position-x: -20%;\n\t}\n}\n\n@keyframes spin {\n\t100% {\n\t\ttransform: rotate(1turn);\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\nimport { Observable, Subscription } from 'rxjs';\n\n@Component({\n\ttag: 'p-loader',\n\tstyleUrl: 'loader.component.scss',\n\tshadow: true,\n})\nexport class Loader {\n\t/**\n\t * Wether to show or hide the loader\n\t */\n\t@Prop() show: boolean | Observable<boolean> = true;\n\n\t/**\n\t * Variant of loader\n\t */\n\t@Prop() variant:\n\t\t| 'inline'\n\t\t| 'full-width'\n\t\t| 'full-screen'\n\t\t| 'modal'\n\t\t| 'ghost' = 'inline';\n\n\t/**\n\t * Color of the loader\n\t */\n\t@Prop() color: 'indigo' | 'white' | 'storm' = 'indigo';\n\n\t/**\n\t * !NOT IMPLEMENTED! Modal title for modal variant\n\t */\n\t@Prop() modalTitle: string;\n\n\t/**\n\t * !NOT IMPLEMENTED! Modal description for modal variant\n\t */\n\t@Prop() modalDescription: string;\n\n\tprivate _show = this.show;\n\tprivate _showSubscriber: Subscription;\n\n\tprivate _loader = (<div class={`loader color-${this.color}`}></div>);\n\n\tcomponentWillRender() {\n\t\tthis._checkShow();\n\t}\n\n\tcomponentShouldUpdate() {\n\t\tthis._checkShow();\n\t}\n\n\trender() {\n\t\tif (!this._show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.variant === 'ghost') {\n\t\t\treturn <Host class=\"p-loader variant-ghost\"></Host>;\n\t\t}\n\n\t\tif (this.variant === 'full-screen') {\n\t\t\treturn (\n\t\t\t\t<Host class=\"p-loader variant-full-screen\">\n\t\t\t\t\t<div class=\"loading-screen\">\n\t\t\t\t\t\t<div class=\"content\">\n\t\t\t\t\t\t\t<slot />\n\n\t\t\t\t\t\t\t<div class=\"loader-wrapper\">{this._loader}</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</Host>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-loader variant-default flex ${\n\t\t\t\t\tthis.variant === 'full-width' &&\n\t\t\t\t\t'w-full flex justify-center text-4xl'\n\t\t\t\t}`}\n\t\t\t>\n\t\t\t\t{this._loader}\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate _checkShow() {\n\t\tif (this._showSubscriber) {\n\t\t\tthis._showSubscriber.unsubscribe();\n\t\t\tthis._showSubscriber = null;\n\t\t}\n\n\t\tif (typeof this.show !== 'boolean') {\n\t\t\tthis._showSubscriber = this.show?.subscribe(\n\t\t\t\t(show) => (this._show = show)\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show = this.show;\n\t}\n}\n"],"version":3}
|