@jobber/components 4.58.2-hackathon.5 → 4.58.2
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/Autocomplete/index.js +4 -4
- package/dist/Banner/index.js +1 -2
- package/dist/Button/Button.d.ts +0 -2
- package/dist/Button/index.js +1 -2
- package/dist/Button-db6114a6.js +57 -0
- package/dist/ButtonDismiss/index.js +2 -3
- package/dist/{ButtonDismiss-3c4be741.js → ButtonDismiss-1ccb84ec.js} +1 -1
- package/dist/Card/index.js +3 -4
- package/dist/{Card-756a230b.js → Card-116af709.js} +2 -2
- package/dist/{Chip-0b20ffea.js → Chip-4f12eec8.js} +2 -2
- package/dist/Chips/index.js +3 -4
- package/dist/Combobox/index.js +1 -1
- package/dist/ConfirmationModal/index.js +4 -5
- package/dist/{ConfirmationModal-cebf2c2e.js → ConfirmationModal-285c3cbe.js} +1 -1
- package/dist/DataDump/index.js +3 -4
- package/dist/DataList/index.js +7 -7
- package/dist/DataTable/index.js +4 -4
- package/dist/DatePicker/index.js +2 -3
- package/dist/{DatePicker-f13767d0.js → DatePicker-49213434.js} +1 -1
- package/dist/Drawer/index.js +2 -3
- package/dist/FeatureSwitch/index.js +1 -2
- package/dist/FormField/index.js +3 -3
- package/dist/{FormField-639bc659.js → FormField-fa9254dc.js} +2 -2
- package/dist/FormatFile/index.js +6 -6
- package/dist/{FormatFile-6a8472a9.js → FormatFile-6423c3b5.js} +2 -2
- package/dist/Gallery/index.js +6 -6
- package/dist/InputAvatar/index.js +2 -2
- package/dist/InputDate/index.js +4 -4
- package/dist/InputEmail/index.js +3 -3
- package/dist/InputFile/index.js +2 -2
- package/dist/{InputFile-8e9d18fd.js → InputFile-25c3369b.js} +1 -1
- package/dist/InputNumber/index.js +4 -4
- package/dist/{InputNumber-08eef959.js → InputNumber-ea9fcee1.js} +1 -1
- package/dist/InputPassword/index.js +3 -3
- package/dist/InputPhoneNumber/index.js +3 -3
- package/dist/InputText/index.js +4 -4
- package/dist/{InputText-4ec68f82.js → InputText-ab237501.js} +1 -1
- package/dist/InputTime/index.js +3 -3
- package/dist/LightBox/index.js +3 -4
- package/dist/{LightBox-4883f08f.js → LightBox-93ef99b9.js} +2 -2
- package/dist/Menu/index.js +2 -3
- package/dist/{Menu-ec6cfd07.js → Menu-2e64307a.js} +1 -1
- package/dist/Modal/index.js +3 -4
- package/dist/{Modal-8322c2f1.js → Modal-c17cc105.js} +2 -2
- package/dist/{Option-489f147e.js → Option-07a24acd.js} +1 -1
- package/dist/Page/index.js +2 -3
- package/dist/Popover/index.js +3 -4
- package/dist/{Popover-3b128829.js → Popover-7c966790.js} +1 -1
- package/dist/RecurringSelect/index.js +5 -5
- package/dist/Select/index.js +4 -4
- package/dist/Spinner/Spinner.d.ts +1 -5
- package/dist/Spinner/index.js +1 -1
- package/dist/Spinner-9d8fc7ff.js +24 -0
- package/dist/Toast/index.js +1 -2
- package/package.json +4 -4
- package/dist/Button/Boom.d.ts +0 -6
- package/dist/Button/Button.types.d.ts +0 -10
- package/dist/Button/ButtonConfettiDelight.d.ts +0 -9
- package/dist/Button/ButtonDelight.d.ts +0 -9
- package/dist/Button/OutParticle.d.ts +0 -4
- package/dist/Button/Particle.d.ts +0 -4
- package/dist/Button-114b5e41.js +0 -337
- package/dist/Spinner-0070bf23.js +0 -63
package/dist/Button-114b5e41.js
DELETED
|
@@ -1,337 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var classnames = require('classnames');
|
|
5
|
-
var reactRouterDom = require('react-router-dom');
|
|
6
|
-
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
7
|
-
var tslib_es6 = require('./tslib.es6-5b8768b7.js');
|
|
8
|
-
var Icon = require('./Icon-405a216c.js');
|
|
9
|
-
var Typography = require('./Typography-83915c54.js');
|
|
10
|
-
|
|
11
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
|
-
|
|
13
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
14
|
-
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
15
|
-
|
|
16
|
-
var css_248z$3 = ":root {\n --button--color-variation: var(--color-interactive);\n --button--color-variation--hover: var(--color-interactive--hover);\n --button--color-surface: var(--color-surface);\n --button--color-surface--hover: var(--color-surface--background);\n --button--color-primaryLabel: var(--color-white);\n\n --button--duration-loading: var(--timing-loading--extended);\n}\n\n.U9VsquOtk2I- {\n display: -ms-inline-flexbox;\n display: inline-flex;\n min-height: calc(16px * 2.25);\n min-height: calc(var(--base-unit) * 2.25);\n box-sizing: border-box;\n margin: 0;\n border: calc(16px / 16) solid rgb(125, 176, 14);\n border: var(--border-base) solid var(--button--color-variation);\n border-radius: calc(16px / 8);\n border-radius: var(--radius-base);\n color: rgb(125, 176, 14);\n color: var(--button--color-variation);\n -webkit-font-smoothing: antialiased;\n letter-spacing: calc(16px / 40);\n letter-spacing: var(--typography--letterSpacing-loose);\n text-align: center;\n -webkit-text-decoration: none;\n text-decoration: none;\n vertical-align: middle;\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--button--color-surface);\n cursor: pointer;\n transition: all 200ms;\n transition: all var(--timing-base);\n -webkit-appearance: none;\n appearance: none;\n fill: rgb(125, 176, 14);\n fill: var(--button--color-variation);\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n.U9VsquOtk2I- * {\n fill: inherit !important;\n}\n\n.U9VsquOtk2I- * {\n color: inherit;\n /* required to over-ride very specific fill from <Icon> */\n}\n\n.U9VsquOtk2I-:hover,\na.U9VsquOtk2I-:hover,\n.U9VsquOtk2I-:focus,\na.U9VsquOtk2I-:focus,\n.U9VsquOtk2I-:active,\na.U9VsquOtk2I-:active {\n border-color: rgb(81, 114, 9);\n border-color: var(--button--color-variation--hover);\n color: rgb(81, 114, 9);\n color: var(--button--color-variation--hover);\n fill: rgb(81, 114, 9);\n fill: var(--button--color-variation--hover);\n background-color: rgb(244, 244, 244);\n background-color: var(--button--color-surface--hover);\n}\n\n.U9VsquOtk2I-:focus,\na.U9VsquOtk2I-:focus,\n.U9VsquOtk2I-:active,\na.U9VsquOtk2I-:active {\n box-shadow: 0px 0px calc(16px / 4) calc(16px / 8)\n rgb(231, 213, 87);\n box-shadow: var(--shadow-focus);\n outline: none;\n}\n\n/* Variation */\n\n.qkFQwI0PKfw- {\n --button--color-variation: var(--color-interactive);\n --button--color-variation--hover: var(--color-interactive--hover);\n}\n\n.jsKQEOBdJ0k- {\n --button--color-variation: var(--color-informative);\n --button--color-variation--hover: var(--color-informative--onSurface);\n}\n\n._4W8X0dxZDK4- {\n --button--color-variation: var(--color-destructive);\n --button--color-variation--hover: var(--color-destructive--hover);\n}\n\n/* Subtle is special because, by default, it's styled as a secondary button */\n\n.vDKO-cmh8vY- {\n --button--color-variation: var(--color-interactive--subtle);\n --button--color-variation--hover: var(--color-interactive--subtle--hover);\n}\n\n/* Type */\n\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-),\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-):hover,\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-):focus {\n color: rgba(255, 255, 255, 1);\n color: var(--button--color-primaryLabel);\n background-color: rgb(125, 176, 14);\n background-color: var(--button--color-variation);\n fill: rgba(255, 255, 255, 1);\n fill: var(--button--color-primaryLabel);\n}\n\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-):hover,\n.FXqN12jWtPo-:not(.vDKO-cmh8vY-):not(.bg-l22drjd0-):focus {\n background-color: rgb(81, 114, 9);\n background-color: var(--button--color-variation--hover);\n}\n\n.vDKO-cmh8vY-.FXqN12jWtPo- {\n color: rgb(125, 176, 14);\n color: var(--button--color-variation);\n fill: rgb(125, 176, 14);\n fill: var(--button--color-variation);\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--button--color-surface);\n}\n\n.pf6G840lKdA-,\n.vDKO-cmh8vY-.FXqN12jWtPo- {\n border-color: rgb(125, 176, 14);\n border-color: var(--button--color-variation);\n}\n\n.vDKO-cmh8vY-.FXqN12jWtPo-:hover,\n.vDKO-cmh8vY-.FXqN12jWtPo-:focus {\n color: rgb(81, 114, 9);\n color: var(--button--color-variation--hover);\n background-color: rgb(244, 244, 244);\n background-color: var(--button--color-surface--hover);\n fill: rgb(81, 114, 9);\n fill: var(--button--color-variation--hover);\n}\n\n.vDKO-cmh8vY-.pf6G840lKdA- {\n background-color: rgba(255, 255, 255, 1);\n background-color: var(--button--color-surface);\n}\n\n.m7DbwRZWcNk-,\n.vDKO-cmh8vY-.pf6G840lKdA- {\n border-color: transparent;\n}\n\n.vDKO-cmh8vY-.pf6G840lKdA-:hover,\n.vDKO-cmh8vY-.pf6G840lKdA-:focus {\n background-color: rgb(244, 244, 244);\n background-color: var(--button--color-surface--hover);\n}\n\n.m7DbwRZWcNk-:hover,\n.m7DbwRZWcNk-:focus,\na.m7DbwRZWcNk-:hover,\na.m7DbwRZWcNk-:focus,\n.vDKO-cmh8vY-.pf6G840lKdA-:hover,\n.vDKO-cmh8vY-.pf6G840lKdA-:focus,\na.vDKO-cmh8vY-.pf6G840lKdA-:hover,\na.vDKO-cmh8vY-.pf6G840lKdA-:focus {\n border-color: transparent;\n}\n\n.vDKO-cmh8vY-.m7DbwRZWcNk- {\n border-color: transparent;\n background-color: transparent;\n}\n\n.vDKO-cmh8vY-.m7DbwRZWcNk-:hover,\n.vDKO-cmh8vY-.m7DbwRZWcNk-:focus,\na.vDKO-cmh8vY-.m7DbwRZWcNk-:hover,\na.vDKO-cmh8vY-.m7DbwRZWcNk-:focus {\n border-color: transparent;\n color: rgb(66, 78, 86);\n color: var(--color-interactive--subtle--hover);\n fill: rgb(66, 78, 86);\n fill: var(--color-interactive--subtle--hover);\n}\n\n/* Disabled */\n\n.U9VsquOtk2I-.bg-l22drjd0-,\na.U9VsquOtk2I-.bg-l22drjd0-,\n.U9VsquOtk2I-.bg-l22drjd0-:hover,\na.U9VsquOtk2I-.bg-l22drjd0-:hover {\n border-color: rgb(225, 225, 225);\n border-color: var(--color-disabled--secondary);\n color: rgb(181, 181, 181);\n color: var(--color-disabled);\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n background-color: rgb(225, 225, 225);\n background-color: var(--color-disabled--secondary);\n fill: rgb(181, 181, 181);\n fill: var(--color-disabled);\n pointer-events: none;\n cursor: not-allowed;\n}\n\n/* Sizes */\n\n.STSDgSRREx4- {\n min-height: calc(16px * 1.5);\n min-height: calc(var(--base-unit) * 1.5);\n padding: 0 calc(16px / 2);\n padding: 0 var(--space-small);\n letter-spacing: 0;\n}\n\n.amIh7vPETfo- {\n min-height: calc(16px * 2.25);\n min-height: calc(var(--base-unit) * 2.25);\n padding: 0 calc((16px * 1) - 4px);\n padding: 0 calc(calc(16px * 1) - 4px);\n padding: 0 calc(var(--space-base) - 4px);\n}\n\n.ON6ezOojFVo- {\n min-height: calc(16px * 3);\n min-height: calc(var(--base-unit) * 3);\n padding: 0 calc(16px * 1);\n padding: 0 var(--space-base);\n}\n\n/* Icon */\n\n.Qq-idRLJTCk- {\n width: calc(16px * 2.25);\n width: calc(var(--base-unit) * 2.25);\n padding: 0;\n}\n\n.Qq-idRLJTCk-.STSDgSRREx4- {\n width: calc((16px / 2) * 3);\n width: calc(calc(16px / 2) * 3);\n width: calc(var(--space-small) * 3);\n}\n\n.Qq-idRLJTCk-.amIh7vPETfo- {\n width: calc((16px * 1) * 2.25);\n width: calc(calc(16px * 1) * 2.25);\n width: calc(var(--space-base) * 2.25);\n}\n\n.Qq-idRLJTCk-.ON6ezOojFVo- {\n width: calc((16px * 1.5) * 2);\n width: calc(calc(16px * 1.5) * 2);\n width: calc(var(--space-large) * 2);\n}\n\n.EWh1gvgPJQg- {\n width: auto;\n}\n\n.EWh1gvgPJQg- > * {\n text-align: left;\n}\n\n.EWh1gvgPJQg- > *:first-child {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n margin-right: calc(16px / 2);\n margin-right: var(--space-small);\n}\n\n.pfzTUMgNb3o- > *:first-child {\n margin-left: calc(16px / 2);\n margin-left: var(--space-small);\n margin-right: 0;\n -ms-flex-order: 1;\n order: 1;\n}\n\n.ZCHqCEyLBw0- {\n width: 100%;\n}\n\n.VVFKEv1ksMA- {\n background-image: linear-gradient(\n 135deg,\n rgba(0, 0, 0, 0.1) 0%,\n rgba(0, 0, 0, 0.1) 25%,\n transparent 25%,\n transparent 50%,\n rgba(0, 0, 0, 0.1) 50%,\n rgba(0, 0, 0, 0.1) 75%,\n transparent 75%,\n transparent 100%\n );\n background-size: calc(16px * 2) calc(16px * 2);\n background-size: var(--space-larger) var(--space-larger);\n pointer-events: none;\n cursor: not-allowed;\n -webkit-animation-duration: 2000ms;\n -webkit-animation-duration: var(--button--duration-loading);\n animation-duration: 2000ms;\n animation-duration: var(--button--duration-loading);\n -webkit-animation-iteration-count: infinite;\n animation-iteration-count: infinite;\n -webkit-animation-name: a8Q-0lnKH5M-;\n animation-name: a8Q-0lnKH5M-;\n -webkit-animation-timing-function: linear;\n animation-timing-function: linear;\n}\n\n.FXqN12jWtPo-.VVFKEv1ksMA-:not(.vDKO-cmh8vY-) {\n background-image: linear-gradient(\n 135deg,\n rgba(255, 255, 255, 0.25) 0%,\n rgba(255, 255, 255, 0.25) 25%,\n transparent 25%,\n transparent 50%,\n rgba(255, 255, 255, 0.25) 50%,\n rgba(255, 255, 255, 0.25) 75%,\n transparent 75%,\n transparent 100%\n );\n}\n\n@-webkit-keyframes a8Q-0lnKH5M- {\n 0% {\n background-position: 0 0;\n }\n\n 100% {\n background-position: calc(16px * 2) calc(16px * 2);\n background-position: var(--space-larger) var(--space-larger);\n }\n}\n\n@keyframes a8Q-0lnKH5M- {\n 0% {\n background-position: 0 0;\n }\n\n 100% {\n background-position: calc(16px * 2) calc(16px * 2);\n background-position: var(--space-larger) var(--space-larger);\n }\n}\n";
|
|
17
|
-
var styles$3 = {"button":"U9VsquOtk2I-","work":"qkFQwI0PKfw-","learning":"jsKQEOBdJ0k-","destructive":"_4W8X0dxZDK4-","subtle":"vDKO-cmh8vY-","primary":"FXqN12jWtPo-","disabled":"bg-l22drjd0-","secondary":"pf6G840lKdA-","tertiary":"m7DbwRZWcNk-","small":"STSDgSRREx4-","base":"amIh7vPETfo-","large":"ON6ezOojFVo-","onlyIcon":"Qq-idRLJTCk-","hasIconAndLabel":"EWh1gvgPJQg-","iconOnRight":"pfzTUMgNb3o-","fullWidth":"ZCHqCEyLBw0-","loading":"VVFKEv1ksMA-","animateStripes":"a8Q-0lnKH5M-"};
|
|
18
|
-
styleInject_es.styleInject(css_248z$3);
|
|
19
|
-
|
|
20
|
-
var css_248z$2 = "._0Ny8u1tbZxI- {\n margin-right: 3.5px;\n\n -webkit-transform: translateY(0px);\n\n transform: translateY(0px);\n transition: -webkit-transform ease-in-out 0.2s;\n transition: transform ease-in-out 0.2s;\n transition: transform ease-in-out 0.2s, -webkit-transform ease-in-out 0.2s;\n}\n.XmAxSewWeOY- {\n font-family: \"Inter\", Helvetica, Arial, sans-serif;\n font-family: var(--typography--fontFamily-normal);\n font-size: calc((16px * 1) * 0.875);\n font-size: calc(calc(16px * 1) * 0.875);\n font-size: var(--typography--fontSize-base);\n font-weight: 800;\n line-height: 1.25;\n line-height: var(--typography--lineHeight-base);\n -webkit-transform: translateY(0px);\n transform: translateY(0px);\n transition: -webkit-transform ease-in-out 0.2s;\n transition: transform ease-in-out 0.2s;\n transition: transform ease-in-out 0.2s, -webkit-transform ease-in-out 0.2s;\n}\n.Gl1xZCG4GqA- {\n -webkit-transform: translateY(28px);\n transform: translateY(28px);\n transition: -webkit-transform ease-in 0.2s;\n transition: transform ease-in 0.2s;\n transition: transform ease-in 0.2s, -webkit-transform ease-in 0.2s;\n}\n.uvTy02yJMII- {\n -webkit-transform: translateY(-28px);\n transform: translateY(-28px);\n transition: -webkit-transform ease-in-out 0.1s;\n transition: transform ease-in-out 0.1s;\n transition: transform ease-in-out 0.1s, -webkit-transform ease-in-out 0.1s;\n}\n";
|
|
21
|
-
var styles$2 = {"space":"_0Ny8u1tbZxI-","span":"XmAxSewWeOY-","drop":"Gl1xZCG4GqA-","explode":"uvTy02yJMII-"};
|
|
22
|
-
styleInject_es.styleInject(css_248z$2);
|
|
23
|
-
|
|
24
|
-
var css_248z$1 = ".wA6kerwVqc0- {\n position: absolute;\n z-index: 0;\n width: 3px;\n height: 3px;\n border-radius: 50%;\n}\n";
|
|
25
|
-
var styles$1 = {"particle":"wA6kerwVqc0-"};
|
|
26
|
-
styleInject_es.styleInject(css_248z$1);
|
|
27
|
-
|
|
28
|
-
const schemes$1 = {
|
|
29
|
-
all: [
|
|
30
|
-
`var(--color-brand)`,
|
|
31
|
-
`var(--color-indigo)`,
|
|
32
|
-
`var(--color-blue)`,
|
|
33
|
-
`var(--color-yellow)`,
|
|
34
|
-
`var(--color-red)`,
|
|
35
|
-
`var(--color-lightBlue)`,
|
|
36
|
-
`var(--color-pink)`,
|
|
37
|
-
`var(--color-teal)`,
|
|
38
|
-
`var(--color-orange)`,
|
|
39
|
-
],
|
|
40
|
-
strongBrand: [
|
|
41
|
-
`var(--color-brand)`,
|
|
42
|
-
`var(--color-indigo)`,
|
|
43
|
-
`var(--color-blue)`,
|
|
44
|
-
],
|
|
45
|
-
redIsh: [`var(--color-orange)`, `var(--color-yellow)`, `var(--color-red)`],
|
|
46
|
-
};
|
|
47
|
-
const Particle = ({ enabled, scheme, }) => {
|
|
48
|
-
const fireworkProps = () => {
|
|
49
|
-
const xDirection = Math.random() * 350;
|
|
50
|
-
const yDirection = Math.random() * 150 + 75;
|
|
51
|
-
const xFlip = Math.random() > 0.5 ? -1 : 1;
|
|
52
|
-
return { xDirection, yDirection, xFlip };
|
|
53
|
-
};
|
|
54
|
-
const particleProps = React.useMemo(() => {
|
|
55
|
-
const colors = schemes$1[scheme];
|
|
56
|
-
const colorPick = Math.floor(Math.random() * (colors === null || colors === void 0 ? void 0 : colors.length));
|
|
57
|
-
const particleID = "id" + Math.floor(Math.random() * 100000);
|
|
58
|
-
const { xDirection, yDirection, xFlip } = fireworkProps();
|
|
59
|
-
return {
|
|
60
|
-
x: xDirection * xFlip,
|
|
61
|
-
y: yDirection * -1,
|
|
62
|
-
color: colors[colorPick],
|
|
63
|
-
id: particleID,
|
|
64
|
-
};
|
|
65
|
-
}, []);
|
|
66
|
-
const classes = classnames__default["default"](styles$1.particle, {
|
|
67
|
-
[`cl-${particleProps.id}`]: enabled,
|
|
68
|
-
"hi!": enabled,
|
|
69
|
-
});
|
|
70
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
71
|
-
React__default["default"].createElement("style", null, `
|
|
72
|
-
.cl-${particleProps.id} {
|
|
73
|
-
animation: ${particleProps.id};
|
|
74
|
-
}
|
|
75
|
-
@keyframes ${particleProps.id} {
|
|
76
|
-
0% {
|
|
77
|
-
transform: translateX(0px) translateY(-5px);
|
|
78
|
-
opacity:0;
|
|
79
|
-
background-color:${particleProps.color};
|
|
80
|
-
}
|
|
81
|
-
1% {
|
|
82
|
-
opacity:1;
|
|
83
|
-
}
|
|
84
|
-
50% {
|
|
85
|
-
transform: translateX(${particleProps.x}px) translateY(${particleProps.y}px);
|
|
86
|
-
}
|
|
87
|
-
61% {
|
|
88
|
-
opacity:0;
|
|
89
|
-
}
|
|
90
|
-
100% {
|
|
91
|
-
opacity:0;
|
|
92
|
-
transform: translate(0,-25px);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
`),
|
|
96
|
-
React__default["default"].createElement("div", { className: classes, style: {
|
|
97
|
-
animationDuration: "1.2s",
|
|
98
|
-
opacity: 0,
|
|
99
|
-
backgroundColor: particleProps.color,
|
|
100
|
-
} })));
|
|
101
|
-
};
|
|
102
|
-
|
|
103
|
-
const schemes = {
|
|
104
|
-
all: [
|
|
105
|
-
`var(--color-brand)`,
|
|
106
|
-
`var(--color-indigo)`,
|
|
107
|
-
`var(--color-blue)`,
|
|
108
|
-
`var(--color-yellow)`,
|
|
109
|
-
`var(--color-red)`,
|
|
110
|
-
`var(--color-lightBlue)`,
|
|
111
|
-
`var(--color-pink)`,
|
|
112
|
-
`var(--color-teal)`,
|
|
113
|
-
`var(--color-orange)`,
|
|
114
|
-
],
|
|
115
|
-
strongBrand: [
|
|
116
|
-
`var(--color-brand)`,
|
|
117
|
-
`var(--color-indigo)`,
|
|
118
|
-
`var(--color-blue)`,
|
|
119
|
-
],
|
|
120
|
-
redIsh: [`var(--color-orange)`, `var(--color-yellow)`, `var(--color-red)`],
|
|
121
|
-
};
|
|
122
|
-
const OutParticle = ({ enabled, scheme, }) => {
|
|
123
|
-
const confettiProps = () => {
|
|
124
|
-
const xDirection = Math.random() * 200;
|
|
125
|
-
const yDirection = Math.random() * 150;
|
|
126
|
-
const xFlip = Math.random() > 0.5 ? -1 : 1;
|
|
127
|
-
const yFlip = Math.random() > 0.5 ? -1 : 1;
|
|
128
|
-
const scale = Math.random() * 20;
|
|
129
|
-
return { xDirection, yDirection, xFlip, yFlip, scale };
|
|
130
|
-
};
|
|
131
|
-
const particleProps = React.useMemo(() => {
|
|
132
|
-
const colors = schemes[scheme];
|
|
133
|
-
const colorPick = Math.floor(Math.random() * (colors === null || colors === void 0 ? void 0 : colors.length));
|
|
134
|
-
const particleID = "id" + Math.floor(Math.random() * 100000);
|
|
135
|
-
const { xDirection, yDirection, xFlip, yFlip, scale } = confettiProps();
|
|
136
|
-
return {
|
|
137
|
-
x: xDirection * xFlip,
|
|
138
|
-
y: yDirection * yFlip,
|
|
139
|
-
color: colors[colorPick],
|
|
140
|
-
scale,
|
|
141
|
-
id: particleID,
|
|
142
|
-
};
|
|
143
|
-
}, []);
|
|
144
|
-
const classes = classnames__default["default"](styles$1.particle, {
|
|
145
|
-
[`cl-${particleProps.id}`]: enabled,
|
|
146
|
-
});
|
|
147
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
148
|
-
React__default["default"].createElement("style", null, `
|
|
149
|
-
.cl-${particleProps.id} {
|
|
150
|
-
animation: ${particleProps.id};
|
|
151
|
-
}
|
|
152
|
-
@keyframes ${particleProps.id} {
|
|
153
|
-
0% {
|
|
154
|
-
transform: translateX(0px) translateY(0px) scale(0);
|
|
155
|
-
opacity:0;
|
|
156
|
-
background-color:${particleProps.color};
|
|
157
|
-
}
|
|
158
|
-
1% {
|
|
159
|
-
opacity:1;
|
|
160
|
-
}
|
|
161
|
-
20% {
|
|
162
|
-
transform: translateX(${particleProps.x / 1.05}px) translateY(${particleProps.y / 1.05}px) scale(${particleProps.scale - 0.1});
|
|
163
|
-
}
|
|
164
|
-
60% {
|
|
165
|
-
transform: translateX(${particleProps.x}px) translateY(${particleProps.y}px) scale(${particleProps.scale});
|
|
166
|
-
}
|
|
167
|
-
61% {
|
|
168
|
-
opacity:0;
|
|
169
|
-
}
|
|
170
|
-
100% {
|
|
171
|
-
opacity:0;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
`),
|
|
175
|
-
React__default["default"].createElement("div", { className: classes, style: {
|
|
176
|
-
animationDuration: "2.2s",
|
|
177
|
-
animationTimingFunction: "ease-in-out",
|
|
178
|
-
backgroundColor: particleProps.color,
|
|
179
|
-
} })));
|
|
180
|
-
};
|
|
181
|
-
|
|
182
|
-
const Boom = ({ enabled, particles = 50, boomType = "firework", scheme = "all", }) => {
|
|
183
|
-
const [particleAmount] = React.useState(particles);
|
|
184
|
-
const [particlesEnabled, setParticlesEnabled] = React.useState(false);
|
|
185
|
-
const [loopArray] = React.useState(Array.from({ length: particleAmount }));
|
|
186
|
-
React.useEffect(() => {
|
|
187
|
-
if (enabled) {
|
|
188
|
-
requestAnimationFrame(() => {
|
|
189
|
-
setParticlesEnabled(true);
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
setParticlesEnabled(false);
|
|
194
|
-
}
|
|
195
|
-
}, [enabled]);
|
|
196
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null, enabled &&
|
|
197
|
-
loopArray.map((_, index) => {
|
|
198
|
-
return boomType === "firework" ? (React__default["default"].createElement(Particle, { key: index, enabled: particlesEnabled, scheme: scheme })) : (React__default["default"].createElement(OutParticle, { key: index, enabled: particlesEnabled, scheme: scheme }));
|
|
199
|
-
})));
|
|
200
|
-
};
|
|
201
|
-
|
|
202
|
-
const ButtonDelight = (props) => {
|
|
203
|
-
const [delightOn, setDelightOn] = React.useState(false);
|
|
204
|
-
const [explodeOn, setExplodeOn] = React.useState(false);
|
|
205
|
-
const [boomEnabled, setBoomEnabled] = React.useState(false);
|
|
206
|
-
const [splitWord, setSplitWord] = React.useState([]);
|
|
207
|
-
const delightfulButton = React.useRef(null);
|
|
208
|
-
const goGoDelight = () => tslib_es6.__awaiter(void 0, void 0, void 0, function* () {
|
|
209
|
-
const elem = delightfulButton.current;
|
|
210
|
-
if (elem && splitWord.length === 0) {
|
|
211
|
-
const words = elem.innerText;
|
|
212
|
-
const letters = words.split("");
|
|
213
|
-
setSplitWord(letters);
|
|
214
|
-
requestAnimationFrame(() => {
|
|
215
|
-
setDelightOn(true);
|
|
216
|
-
});
|
|
217
|
-
const delay = letters.length * 30;
|
|
218
|
-
setTimeout(() => {
|
|
219
|
-
setDelightOn(false);
|
|
220
|
-
setExplodeOn(true);
|
|
221
|
-
setTimeout(() => {
|
|
222
|
-
setBoomEnabled(true);
|
|
223
|
-
setTimeout(() => {
|
|
224
|
-
setBoomEnabled(false);
|
|
225
|
-
}, 1300);
|
|
226
|
-
}, 20);
|
|
227
|
-
setTimeout(() => {
|
|
228
|
-
setExplodeOn(false);
|
|
229
|
-
setTimeout(() => {
|
|
230
|
-
setSplitWord([]);
|
|
231
|
-
}, 200);
|
|
232
|
-
}, delay);
|
|
233
|
-
}, delay);
|
|
234
|
-
}
|
|
235
|
-
});
|
|
236
|
-
const delightfulClick = (e) => {
|
|
237
|
-
goGoDelight();
|
|
238
|
-
setTimeout(() => {
|
|
239
|
-
if (props.onClick && !props.href) {
|
|
240
|
-
props.onClick(e);
|
|
241
|
-
}
|
|
242
|
-
else if (props.onClick && props.href) {
|
|
243
|
-
window.location.href = props.href;
|
|
244
|
-
}
|
|
245
|
-
}, 1500);
|
|
246
|
-
};
|
|
247
|
-
return (React__default["default"].createElement("button", Object.assign({}, props, { onClick: delightfulClick, type: "button", ref: delightfulButton }),
|
|
248
|
-
React__default["default"].createElement(Boom, { enabled: boomEnabled, particles: 150, boomType: "firework" }),
|
|
249
|
-
splitWord.length === 0
|
|
250
|
-
? props.children
|
|
251
|
-
: splitWord.map((letter, index) => {
|
|
252
|
-
const spanClassNames = classnames__default["default"](styles$2.span, {
|
|
253
|
-
[styles$2.space]: letter === " ",
|
|
254
|
-
[styles$2.drop]: delightOn,
|
|
255
|
-
[styles$2.explode]: explodeOn,
|
|
256
|
-
});
|
|
257
|
-
return (React__default["default"].createElement("span", { key: index, className: spanClassNames, style: {
|
|
258
|
-
transitionDelay: delightOn ? String(index / 100) + "s" : "0s",
|
|
259
|
-
} }, letter));
|
|
260
|
-
})));
|
|
261
|
-
};
|
|
262
|
-
|
|
263
|
-
var css_248z = ".kUL5UIN4awA- {\n -webkit-transform: scale(0.9);\n transform: scale(0.9);\n transition: -webkit-transform ease-in-out 0.2s;\n transition: transform ease-in-out 0.2s;\n transition: transform ease-in-out 0.2s, -webkit-transform ease-in-out 0.2s;\n}\n";
|
|
264
|
-
var styles = {"shrink":"kUL5UIN4awA-"};
|
|
265
|
-
styleInject_es.styleInject(css_248z);
|
|
266
|
-
|
|
267
|
-
const ButtonConfettiDelight = (props) => {
|
|
268
|
-
const delightfulButton = React.useRef(null);
|
|
269
|
-
const [shrink, setShrink] = React.useState(false);
|
|
270
|
-
const [confetti, setConfetti] = React.useState(false);
|
|
271
|
-
const delightfulClick = () => {
|
|
272
|
-
setConfetti(false);
|
|
273
|
-
setShrink(true);
|
|
274
|
-
setTimeout(() => {
|
|
275
|
-
setShrink(false);
|
|
276
|
-
setConfetti(true);
|
|
277
|
-
setTimeout(() => {
|
|
278
|
-
setConfetti(false);
|
|
279
|
-
}, 2300);
|
|
280
|
-
}, 150);
|
|
281
|
-
};
|
|
282
|
-
const classes = classnames__default["default"](props.className, {
|
|
283
|
-
[styles.shrink]: shrink,
|
|
284
|
-
});
|
|
285
|
-
return (React__default["default"].createElement("div", null,
|
|
286
|
-
React__default["default"].createElement("button", Object.assign({}, props, { onClick: delightfulClick, type: "button", ref: delightfulButton, className: classes }),
|
|
287
|
-
React__default["default"].createElement(Boom, { enabled: confetti, particles: 30, boomType: "confetti", scheme: "strongBrand" }),
|
|
288
|
-
props.children)));
|
|
289
|
-
};
|
|
290
|
-
|
|
291
|
-
function Button(props) {
|
|
292
|
-
const { ariaControls, ariaHaspopup, ariaExpanded, ariaLabel, delight, delightType = "firework", disabled = false, external, fullWidth, icon, label, iconOnRight, id, loading, onClick, onMouseDown, role, size = "base", type = "primary", url, to, variation = "work", submit, } = props;
|
|
293
|
-
const buttonClassNames = classnames__default["default"](styles$3.button, styles$3[size], {
|
|
294
|
-
[styles$3.onlyIcon]: icon && !label,
|
|
295
|
-
[styles$3.hasIconAndLabel]: icon && label,
|
|
296
|
-
[styles$3.iconOnRight]: iconOnRight,
|
|
297
|
-
[styles$3[variation]]: variation,
|
|
298
|
-
[styles$3[type]]: type,
|
|
299
|
-
[styles$3.disabled]: disabled,
|
|
300
|
-
[styles$3.fullWidth]: fullWidth,
|
|
301
|
-
[styles$3.loading]: loading,
|
|
302
|
-
});
|
|
303
|
-
const buttonType = submit ? "submit" : "button";
|
|
304
|
-
const tagProps = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ className: buttonClassNames, disabled,
|
|
305
|
-
id }, (!disabled && { href: url })), (!disabled && { onClick: onClick })), (!disabled && { onMouseDown: onMouseDown })), (external && { target: "_blank" })), (url === undefined && to === undefined && { type: buttonType })), { "aria-controls": ariaControls, "aria-haspopup": ariaHaspopup, "aria-expanded": ariaExpanded, "aria-label": ariaLabel, role: role });
|
|
306
|
-
const buttonInternals = React__default["default"].createElement(ButtonInternals, Object.assign({}, props));
|
|
307
|
-
if (to) {
|
|
308
|
-
return (React__default["default"].createElement(reactRouterDom.Link, Object.assign({}, tagProps, { to: to }), buttonInternals));
|
|
309
|
-
}
|
|
310
|
-
let Tag = url
|
|
311
|
-
? "a"
|
|
312
|
-
: "button";
|
|
313
|
-
if (delight && delightType === "firework") {
|
|
314
|
-
Tag = ButtonDelight;
|
|
315
|
-
}
|
|
316
|
-
else if (delight && delightType === "confetti") {
|
|
317
|
-
Tag = ButtonConfettiDelight;
|
|
318
|
-
}
|
|
319
|
-
return React__default["default"].createElement(Tag, Object.assign({}, tagProps), buttonInternals);
|
|
320
|
-
}
|
|
321
|
-
function ButtonInternals({ label, icon, size = "base" }) {
|
|
322
|
-
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
323
|
-
icon && React__default["default"].createElement(Icon.Icon, { name: icon, size: size }),
|
|
324
|
-
React__default["default"].createElement(Typography.Typography, { element: "span", fontWeight: "extraBold", fontFamily: "base", size: getTypeSizes(size) }, label)));
|
|
325
|
-
}
|
|
326
|
-
function getTypeSizes(size) {
|
|
327
|
-
switch (size) {
|
|
328
|
-
case "small":
|
|
329
|
-
return "small";
|
|
330
|
-
case "large":
|
|
331
|
-
return "large";
|
|
332
|
-
default:
|
|
333
|
-
return "base";
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
|
|
337
|
-
exports.Button = Button;
|
package/dist/Spinner-0070bf23.js
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var classnames = require('classnames');
|
|
5
|
-
var styleInject_es = require('./style-inject.es-9d2f5f4e.js');
|
|
6
|
-
|
|
7
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
-
|
|
9
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
10
|
-
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
11
|
-
|
|
12
|
-
var css_248z = ".uoU-LfjFDv0- {\n width: calc(16px * 2);\n width: var(--space-larger);\n height: calc(16px * 2);\n height: var(--space-larger);\n box-shadow: 0px 0px 4px 2px rgba(1, 41, 57, 0.4);\n border: solid rgb(77, 105, 116);\n border: solid var(--color-blue--light);\n border-top-color: rgba(255, 255, 255, 1);\n border-top-color: var(--color-white);\n border-width: calc((16px / 2) * 0.75);\n border-width: calc(calc(16px / 2) * 0.75);\n border-width: calc(var(--space-small) * 0.75);\n border-radius: 100%;\n border-radius: var(--radius-circle);\n background-color: rgb(217, 223, 225);\n background-color: var(--color-blue--lightest);\n -webkit-animation-duration: calc(500ms * 2);\n -webkit-animation-duration: calc(var(--timing-slowest) * 2);\n animation-duration: calc(500ms * 2);\n animation-duration: calc(var(--timing-slowest) * 2);\n -webkit-animation-iteration-count: infinite;\n animation-iteration-count: infinite;\n -webkit-animation-name: _1aCKd5q9u34-;\n animation-name: _1aCKd5q9u34-;\n -webkit-animation-timing-function: linear;\n animation-timing-function: linear;\n will-change: transform;\n}\n\n.azOEELEMb4U- {\n width: 90px;\n height: 90px;\n}\n\n@-webkit-keyframes _1aCKd5q9u34- {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(359deg);\n transform: rotate(359deg);\n }\n}\n\n@keyframes _1aCKd5q9u34- {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(359deg);\n transform: rotate(359deg);\n }\n}\n\n.cLRQwkSqnhA- {\n width: calc(16px * 1);\n width: var(--space-base);\n height: calc(16px * 1);\n height: var(--space-base);\n border-width: calc(16px / 4);\n border-width: var(--space-smaller);\n}\n\n.h6O4vDPCWOQ- {\n display: inline-block;\n margin-top: calc((16px / 4) * -1);\n margin-top: calc(calc(16px / 4) * -1);\n margin-top: calc(var(--space-smaller) * -1);\n vertical-align: middle;\n}\n";
|
|
13
|
-
var styles = {"spinner":"uoU-LfjFDv0-","animationSpin":"_1aCKd5q9u34-","industryGif":"azOEELEMb4U-","small":"cLRQwkSqnhA-","inline":"h6O4vDPCWOQ-"};
|
|
14
|
-
styleInject_es.styleInject(css_248z);
|
|
15
|
-
|
|
16
|
-
/* eslint-disable max-statements */
|
|
17
|
-
function Spinner({ size = "base", inline, hasDelight }) {
|
|
18
|
-
const arboristGif = require("../Spinner/assets/Jobber_Arborist.gif");
|
|
19
|
-
const hvacGif = require("../Spinner/assets/Jobber_PressureGauge.gif");
|
|
20
|
-
const workVanGif = require("../Spinner/assets/Jobber_WorkVan.gif");
|
|
21
|
-
const landscapingGif = require("../Spinner/assets/Jobber_Bobcat.gif");
|
|
22
|
-
const chainsawGif = require("../Spinner/assets/Jobber_Chainsaw.gif");
|
|
23
|
-
const plumbingGif = require("../Spinner/assets/Jobber_PipeWrench.gif");
|
|
24
|
-
const powerdrillGif = require("../Spinner/assets/Jobber_PowerDrill.gif");
|
|
25
|
-
const windowCleaningGif = require("../Spinner/assets/Jobber_WaterLogo.gif");
|
|
26
|
-
let selectedGif;
|
|
27
|
-
switch (hasDelight) {
|
|
28
|
-
case "arborist":
|
|
29
|
-
selectedGif = arboristGif;
|
|
30
|
-
break;
|
|
31
|
-
case "pressureGauge":
|
|
32
|
-
selectedGif = hvacGif;
|
|
33
|
-
break;
|
|
34
|
-
case "workVan":
|
|
35
|
-
selectedGif = workVanGif;
|
|
36
|
-
break;
|
|
37
|
-
case "landscaping":
|
|
38
|
-
selectedGif = landscapingGif;
|
|
39
|
-
break;
|
|
40
|
-
case "chainsaw":
|
|
41
|
-
selectedGif = chainsawGif;
|
|
42
|
-
break;
|
|
43
|
-
case "plumbing":
|
|
44
|
-
selectedGif = plumbingGif;
|
|
45
|
-
break;
|
|
46
|
-
case "powerDrill":
|
|
47
|
-
selectedGif = powerdrillGif;
|
|
48
|
-
break;
|
|
49
|
-
case "windowCleaning":
|
|
50
|
-
selectedGif = windowCleaningGif;
|
|
51
|
-
break;
|
|
52
|
-
}
|
|
53
|
-
if (hasDelight) {
|
|
54
|
-
return (React__default["default"].createElement("img", { src: selectedGif, alt: "Loading", className: styles.industryGif, role: "alert", "aria-busy": true, "aria-label": "loading" }));
|
|
55
|
-
}
|
|
56
|
-
const spinnerStyles = classnames__default["default"](styles.spinner, {
|
|
57
|
-
[styles.small]: size === "small",
|
|
58
|
-
[styles.inline]: inline,
|
|
59
|
-
});
|
|
60
|
-
return (React__default["default"].createElement("div", { className: spinnerStyles, role: "alert", "aria-busy": true, "aria-label": "loading" }));
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
exports.Spinner = Spinner;
|