@fremtind/jokul 4.1.5 → 4.3.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/build/build-stats.html +1 -1
- package/build/cjs/components/help/Help.cjs +1 -1
- package/build/cjs/components/help/Help.cjs.map +1 -1
- package/build/cjs/components/help/Help.d.cts +1 -1
- package/build/cjs/components/help/index.cjs +1 -1
- package/build/cjs/components/help/index.d.cts +1 -1
- package/build/cjs/components/help/types.d.cts +4 -0
- package/build/cjs/components/modal/Modal.cjs +1 -1
- package/build/cjs/components/modal/Modal.cjs.map +1 -1
- package/build/cjs/components/modal/Modal.d.cts +2 -9
- package/build/cjs/components/modal/index.d.cts +1 -1
- package/build/cjs/components/modal/types.d.cts +18 -0
- package/build/es/components/help/Help.d.ts +1 -1
- package/build/es/components/help/Help.js +1 -1
- package/build/es/components/help/Help.js.map +1 -1
- package/build/es/components/help/index.d.ts +1 -1
- package/build/es/components/help/index.js +1 -1
- package/build/es/components/help/types.d.ts +4 -0
- package/build/es/components/modal/Modal.d.ts +2 -9
- package/build/es/components/modal/Modal.js +1 -1
- package/build/es/components/modal/Modal.js.map +1 -1
- package/build/es/components/modal/index.d.ts +1 -1
- package/build/es/components/modal/types.d.ts +18 -0
- package/package.json +1 -1
- package/styles/components/countdown/countdown.css +2 -2
- package/styles/components/countdown/countdown.min.css +1 -1
- package/styles/components/datepicker/_calendar-date-button.scss +5 -5
- package/styles/components/datepicker/_calendar.scss +5 -6
- package/styles/components/datepicker/datepicker.css +13 -5
- package/styles/components/datepicker/datepicker.min.css +1 -1
- package/styles/components/feedback/feedback.css +2 -2
- package/styles/components/feedback/feedback.min.css +1 -1
- package/styles/components/file-input/file-input.css +9 -9
- package/styles/components/file-input/file-input.min.css +1 -1
- package/styles/components/help/help.css +19 -13
- package/styles/components/help/help.min.css +1 -1
- package/styles/components/help/help.scss +21 -13
- package/styles/components/input-group/_labels.scss +8 -12
- package/styles/components/input-group/input-group.css +8 -10
- package/styles/components/input-group/input-group.min.css +1 -1
- package/styles/components/loader/loader.css +6 -6
- package/styles/components/loader/loader.min.css +1 -1
- package/styles/components/loader/skeleton-loader.css +3 -3
- package/styles/components/loader/skeleton-loader.min.css +1 -1
- package/styles/components/message/message.css +2 -2
- package/styles/components/message/message.min.css +1 -1
- package/styles/components/modal/_layout.scss +22 -0
- package/styles/components/modal/_modal-base.scss +32 -0
- package/styles/components/modal/_motion.scss +45 -0
- package/styles/components/modal/_overlay.scss +20 -0
- package/styles/components/modal/_parts.scss +33 -0
- package/styles/components/modal/_placement.scss +59 -0
- package/styles/components/modal/modal.css +117 -33
- package/styles/components/modal/modal.min.css +1 -1
- package/styles/components/modal/modal.scss +6 -95
- package/styles/components/progress-bar/progress-bar.css +1 -1
- package/styles/components/progress-bar/progress-bar.min.css +1 -1
- package/styles/components/segmented-control/segmented-control.css +8 -10
- package/styles/components/segmented-control/segmented-control.min.css +1 -1
- package/styles/components/system-message/system-message.css +2 -2
- package/styles/components/system-message/system-message.min.css +1 -1
- package/styles/components/toast/toast.css +4 -4
- package/styles/components/toast/toast.min.css +1 -1
- package/styles/components-beta/select/select.css +1 -1
- package/styles/components-beta/select/select.min.css +1 -1
- package/styles/components-beta/select/select.scss +1 -1
- package/styles/styles.css +179 -83
- package/styles/styles.min.css +2 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../../clsx-E3yX_9sL.cjs");require("react");const o=require("../button/Button.cjs"),r=require("../icon/Icon.cjs");exports.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../../clsx-E3yX_9sL.cjs");require("react");const o=require("../button/Button.cjs"),r=require("../icon/Icon.cjs");exports.Help=({position:i="top",buttonText:s="Hjelp",showButtonText:l=!1,iconPosition:n="left",className:c,children:a,...p})=>e.jsxs("div",{className:t.clsx("jkl-help",c),children:[e.jsx(o.Button,{...p,title:s||p.title,iconPosition:n,variant:"ghost",className:"jkl-help-trigger",icon:e.jsx(r.Icon,{"aria-hidden":"true",children:"help"}),"data-testid":"jkl-help-trigger",popovertarget:`${s}-popover`,style:{anchorName:`${s}-popover`},children:l&&s}),e.jsx("output",{"aria-live":"assertive",children:e.jsx("div",{"data-position":i,popover:"auto",id:`${s}-popover`,className:"jkl-help-popover",children:a})})]});
|
|
2
2
|
//# sourceMappingURL=Help.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Help.cjs","sources":["../../../../src/components/help/Help.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { Button } from \"../button/index.js\";\nimport { Icon } from \"../icon/Icon.js\";\nimport type { HelpProps } from \"./types.js\";\n\nexport const
|
|
1
|
+
{"version":3,"file":"Help.cjs","sources":["../../../../src/components/help/Help.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { Button } from \"../button/index.js\";\nimport { Icon } from \"../icon/Icon.js\";\nimport type { HelpProps } from \"./types.js\";\n\nexport const Help = ({\n position = \"top\",\n buttonText = \"Hjelp\",\n showButtonText = false,\n iconPosition = \"left\",\n className,\n children,\n ...rest\n}: HelpProps) => {\n return (\n <div className={clsx(\"jkl-help\", className)}>\n <Button\n {...rest}\n title={buttonText || rest.title}\n iconPosition={iconPosition}\n variant=\"ghost\"\n className={\"jkl-help-trigger\"}\n icon={<Icon aria-hidden=\"true\">help</Icon>}\n data-testid=\"jkl-help-trigger\"\n // @ts-ignore\n popovertarget={`${buttonText}-popover`}\n style={{ anchorName: `${buttonText}-popover` }}\n >\n {showButtonText && buttonText}\n </Button>\n\n <output aria-live=\"assertive\">\n <div\n data-position={position}\n // @ts-ignore\n popover=\"auto\"\n id={`${buttonText}-popover`}\n className=\"jkl-help-popover\"\n >\n {children}\n </div>\n </output>\n </div>\n );\n};\n"],"names":["position","buttonText","showButtonText","iconPosition","className","children","rest","clsx","jsx","Button","title","variant","icon","Icon","popovertarget","style","anchorName","popover","id"],"mappings":"iQAMoB,EAChBA,SAAAA,EAAW,MACXC,WAAAA,EAAa,QACbC,eAAAA,GAAiB,EACjBC,aAAAA,EAAe,OACfC,UAAAA,EACAC,SAAAA,KACGC,YAGE,MAAA,CAAIF,UAAWG,EAAAA,KAAK,WAAYH,GAC7BC,SAAA,CAAAG,EAAAA,IAACC,EAAAA,OAAA,IACOH,EACJI,MAAOT,GAAcK,EAAKI,MAC1BP,aAAAA,EACAQ,QAAQ,QACRP,UAAW,mBACXQ,KAAMJ,EAAAA,IAACK,OAAA,CAAK,cAAY,OAAOR,SAAA,SAC/B,cAAY,mBAEZS,cAAe,GAAGb,YAClBc,MAAO,CAAEC,WAAY,GAAGf,aAEvBI,SAAAH,GAAkBD,IAGvBO,EAAAA,IAAC,SAAA,CAAO,YAAU,YACdH,SAAAG,EAAAA,IAAC,MAAA,CACG,gBAAeR,EAEfiB,QAAQ,OACRC,GAAI,GAAGjB,YACPG,UAAU,mBAETC,SAAAA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { HelpProps } from './types.cjs';
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const Help: ({ position, buttonText, showButtonText, iconPosition, className, children, ...rest }: HelpProps) => React.JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./Help.cjs");exports.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./Help.cjs");exports.Help=e.Help;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { Help } from './Help.cjs';
|
|
2
2
|
export type { HelpProps } from './types.cjs';
|
|
@@ -8,6 +8,8 @@ export type HelpProps = Omit<ButtonProps<"button">, "iconPosition" | "icon"> & {
|
|
|
8
8
|
position?: "top" | "bottom" | "left" | "right";
|
|
9
9
|
/**
|
|
10
10
|
* @default "left"
|
|
11
|
+
*
|
|
12
|
+
* @deprecated siden teksten ikke lenger skal vises vil heller ikke posisjon være relevant
|
|
11
13
|
*/
|
|
12
14
|
iconPosition?: "left" | "right";
|
|
13
15
|
/**
|
|
@@ -16,6 +18,8 @@ export type HelpProps = Omit<ButtonProps<"button">, "iconPosition" | "icon"> & {
|
|
|
16
18
|
buttonText: string;
|
|
17
19
|
/**
|
|
18
20
|
* @default false
|
|
21
|
+
*
|
|
22
|
+
* @deprecated dersom du vil vise tekst knyttet til en hjelpetekst bruk heller Button
|
|
19
23
|
*/
|
|
20
24
|
showButtonText?: boolean;
|
|
21
25
|
/**
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),e=require("../../../clsx-E3yX_9sL.cjs"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),e=require("../../../clsx-E3yX_9sL.cjs"),l=require("react"),s=require("../icon-button/IconButton.cjs"),o=require("../icon/icons/CloseIcon.cjs"),r=l.forwardRef(({className:l,placement:s="center",slideIn:o,...r},d)=>a.jsx("div",{className:e.clsx("jkl-modal-container",`jkl-modal-container--placement-${s}`,{"jkl-modal-container--slide-in":o},l),...r,ref:d,"data-portal":!0}));r.displayName="ModalContainer";const d=l.forwardRef(({className:l,transparent:s,...o},r)=>a.jsx("div",{className:e.clsx("jkl-modal-overlay",l,{"jkl-modal-overlay--transparent":s}),...o,ref:r}));d.displayName="ModalOverlay";const t=l.forwardRef(({className:l,component:s,padding:o,style:r,...d},t)=>{const c=s||"div";return a.jsx(c,{className:e.clsx("jkl jkl-modal",l),style:{"--modal-padding":o?`var(--jkl-spacing-${o})`:void 0,...r},...d,ref:t})});t.displayName="Modal";const c=l.forwardRef(({className:l,...s},o)=>a.jsx("div",{className:e.clsx("jkl-modal-header",l),...s,ref:o}));c.displayName="ModalHeader";const n=l.forwardRef(({className:l,...s},o)=>a.jsx("p",{className:e.clsx("jkl-modal-title",l),...s,ref:o}));n.displayName="ModalTitle";const i=l.forwardRef(({className:l,...r},d)=>a.jsx(s.IconButton,{className:e.clsx("jkl-modal-close",l),"data-testautoid":"jkl-modal-close",...r,ref:d,children:a.jsx(o.CloseIcon,{variant:"medium"})}));i.displayName="ModalCloseButton";const m=l.forwardRef(({className:l,...s},o)=>a.jsx("div",{className:e.clsx("jkl-modal-body",l),...s,ref:o}));m.displayName="ModalBody";const j=l.forwardRef(({className:l,...s},o)=>a.jsx("div",{className:e.clsx("jkl-modal-actions",l),...s,ref:o}));j.displayName="ModalActions",exports.Modal=t,exports.ModalActions=j,exports.ModalBody=m,exports.ModalCloseButton=i,exports.ModalContainer=r,exports.ModalHeader=c,exports.ModalOverlay=d,exports.ModalTitle=n;
|
|
2
2
|
//# sourceMappingURL=Modal.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.cjs","sources":["../../../../src/components/modal/Modal.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport { IconButton } from \"../icon-button/IconButton.js\";\nimport type { IconButtonProps } from \"../icon-button/types.js\";\nimport { CloseIcon } from \"../icon/icons/CloseIcon.js\";\nimport type {\n BaseModalProps,\n ModalConfig,\n ModalOverlayProps,\n ModalProps,\n} from \"./types.js\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalContainer = forwardRef
|
|
1
|
+
{"version":3,"file":"Modal.cjs","sources":["../../../../src/components/modal/Modal.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport { IconButton } from \"../icon-button/IconButton.js\";\nimport type { IconButtonProps } from \"../icon-button/types.js\";\nimport { CloseIcon } from \"../icon/icons/CloseIcon.js\";\nimport type {\n BaseModalProps,\n ModalConfig,\n ModalContainerProps,\n ModalOverlayProps,\n ModalProps,\n} from \"./types.js\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalContainer = forwardRef<HTMLDivElement, ModalContainerProps>(\n ({ className, placement = \"center\", slideIn, ...rest }, ref) => {\n // TODO: 'data-portal' fjernes når modalen tar i bruk Popover komponenten. Issue: https://github.com/fremtind/jokul/issues/4356\n return (\n <div\n className={clsx(\n \"jkl-modal-container\",\n `jkl-modal-container--placement-${placement}`,\n { \"jkl-modal-container--slide-in\": slideIn },\n className,\n )}\n {...rest}\n ref={ref}\n data-portal\n />\n );\n },\n);\nModalContainer.displayName = \"ModalContainer\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalOverlay = forwardRef<HTMLDivElement, ModalOverlayProps>(\n ({ className, transparent, ...rest }, ref) => (\n <div\n className={clsx(\"jkl-modal-overlay\", className, {\n \"jkl-modal-overlay--transparent\": transparent,\n })}\n {...rest}\n ref={ref}\n />\n ),\n);\nModalOverlay.displayName = \"ModalOverlay\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const Modal = forwardRef<HTMLElement, ModalConfig[\"modal\"] & ModalProps>(\n ({ className, component, padding, style, ...rest }, ref) => {\n const C = component || \"div\";\n return (\n <C\n className={clsx(\"jkl jkl-modal\", className)}\n style={\n {\n \"--modal-padding\": padding\n ? `var(--jkl-spacing-${padding})`\n : undefined,\n ...style,\n } as React.CSSProperties\n }\n {...rest}\n ref={ref}\n />\n );\n },\n);\nModal.displayName = \"Modal\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalHeader = forwardRef<HTMLDivElement, BaseModalProps>(\n ({ className, ...rest }, ref) => (\n <div\n className={clsx(\"jkl-modal-header\", className)}\n {...rest}\n ref={ref}\n />\n ),\n);\nModalHeader.displayName = \"ModalHeader\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalTitle = forwardRef<\n HTMLParagraphElement,\n ModalConfig[\"title\"] & BaseModalProps\n>(({ className, ...rest }, ref) => (\n <p className={clsx(\"jkl-modal-title\", className)} {...rest} ref={ref} />\n));\nModalTitle.displayName = \"ModalTitle\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalCloseButton = forwardRef<\n HTMLButtonElement,\n Omit<ModalConfig[\"closeButton\"], \"onClick\"> &\n BaseModalProps &\n IconButtonProps\n>(({ className, ...rest }, ref) => (\n <IconButton\n className={clsx(\"jkl-modal-close\", className)}\n data-testautoid=\"jkl-modal-close\"\n {...rest}\n ref={ref}\n >\n <CloseIcon variant=\"medium\" />\n </IconButton>\n));\nModalCloseButton.displayName = \"ModalCloseButton\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalBody = forwardRef<HTMLDivElement, BaseModalProps>(\n ({ className, ...rest }, ref) => (\n <div\n className={clsx(\"jkl-modal-body\", className)}\n {...rest}\n ref={ref}\n />\n ),\n);\nModalBody.displayName = \"ModalBody\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalActions = forwardRef<HTMLDivElement, BaseModalProps>(\n ({ className, ...rest }, ref) => (\n <div\n className={clsx(\"jkl-modal-actions\", className)}\n {...rest}\n ref={ref}\n />\n ),\n);\nModalActions.displayName = \"ModalActions\";\n"],"names":["ModalContainer","forwardRef","className","placement","slideIn","rest","ref","jsx","clsx","displayName","ModalOverlay","transparent","Modal","component","padding","style","C","ModalHeader","ModalTitle","ModalCloseButton","IconButton","children","CloseIcon","variant","ModalBody","ModalActions"],"mappings":"oQAgBaA,EAAiBC,EAAAA,WAC1B,EAAGC,UAAAA,EAAWC,UAAAA,EAAY,SAAUC,QAAAA,KAAYC,GAAQC,IAGhDC,EAAAA,IAAC,MAAA,CACGL,UAAWM,EAAAA,KACP,sBACA,kCAAkCL,IAClC,CAAE,gCAAiCC,GACnCF,MAEAG,EACJC,IAAAA,EACA,eAAW,KAK3BN,EAAeS,YAAc,iBAKtB,MAAMC,EAAeT,EAAAA,WACxB,EAAGC,UAAAA,EAAWS,YAAAA,KAAgBN,GAAQC,IAClCC,EAAAA,IAAC,MAAA,CACGL,UAAWM,EAAAA,KAAK,oBAAqBN,EAAW,CAC5C,iCAAkCS,OAElCN,EACJC,IAAAA,KAIZI,EAAaD,YAAc,eAKpB,MAAMG,EAAQX,EAAAA,WACjB,EAAGC,UAAAA,EAAWW,UAAAA,EAAWC,QAAAA,EAASC,MAAAA,KAAUV,GAAQC,KAChD,MAAMU,EAAIH,GAAa,MACvB,OACIN,EAAAA,IAACS,EAAA,CACGd,UAAWM,EAAAA,KAAK,gBAAiBN,GACjCa,MACI,CACI,kBAAmBD,EACb,qBAAqBA,UACrB,KACHC,MAGPV,EACJC,IAAAA,MAKhBM,EAAMH,YAAc,QAKb,MAAMQ,EAAchB,EAAAA,WACvB,EAAGC,UAAAA,KAAcG,GAAQC,IACrBC,EAAAA,IAAC,MAAA,CACGL,UAAWM,EAAAA,KAAK,mBAAoBN,MAChCG,EACJC,IAAAA,KAIZW,EAAYR,YAAc,cAKnB,MAAMS,EAAajB,EAAAA,WAGxB,EAAGC,UAAAA,KAAcG,GAAQC,UACtB,IAAA,CAAEJ,UAAWM,EAAAA,KAAK,kBAAmBN,MAAgBG,EAAMC,IAAAA,KAEhEY,EAAWT,YAAc,aAKlB,MAAMU,EAAmBlB,EAAAA,WAK9B,EAAGC,UAAAA,KAAcG,GAAQC,IACvBC,EAAAA,IAACa,EAAAA,WAAA,CACGlB,UAAWM,EAAAA,KAAK,kBAAmBN,GACnC,kBAAgB,qBACZG,EACJC,IAAAA,EAEAe,SAAAd,EAAAA,IAACe,EAAAA,UAAA,CAAUC,QAAQ,cAG3BJ,EAAiBV,YAAc,mBAKxB,MAAMe,EAAYvB,EAAAA,WACrB,EAAGC,UAAAA,KAAcG,GAAQC,IACrBC,EAAAA,IAAC,MAAA,CACGL,UAAWM,EAAAA,KAAK,iBAAkBN,MAC9BG,EACJC,IAAAA,KAIZkB,EAAUf,YAAc,YAKjB,MAAMgB,EAAexB,EAAAA,WACxB,EAAGC,UAAAA,KAAcG,GAAQC,IACrBC,EAAAA,IAAC,MAAA,CACGL,UAAWM,EAAAA,KAAK,oBAAqBN,MACjCG,EACJC,IAAAA,KAIZmB,EAAahB,YAAc"}
|
|
@@ -1,17 +1,10 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { IconButtonProps } from '../icon-button/types.cjs';
|
|
3
|
-
import { BaseModalProps, ModalProps } from './types.cjs';
|
|
3
|
+
import { BaseModalProps, ModalContainerProps, ModalProps } from './types.cjs';
|
|
4
4
|
/**
|
|
5
5
|
* Ment å brukes med `useModal`.
|
|
6
6
|
*/
|
|
7
|
-
export declare const ModalContainer: React.ForwardRefExoticComponent<Omit<
|
|
8
|
-
id: string;
|
|
9
|
-
ref: (node: React.ReactNode | HTMLElement) => void;
|
|
10
|
-
role: string;
|
|
11
|
-
'aria-modal': boolean;
|
|
12
|
-
'aria-hidden': boolean;
|
|
13
|
-
'aria-labelledby': string;
|
|
14
|
-
} & BaseModalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export declare const ModalContainer: React.ForwardRefExoticComponent<Omit<ModalContainerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
15
8
|
/**
|
|
16
9
|
* Ment å brukes med `useModal`.
|
|
17
10
|
*/
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { ModalContainer, ModalOverlay, Modal, ModalHeader, ModalTitle, ModalCloseButton, ModalBody, ModalActions, } from './Modal.cjs';
|
|
2
2
|
export { useModal, type ModalInstance } from './useModal.cjs';
|
|
3
|
-
export type { ModalProps, BaseModalProps, ModalOverlayProps, UseModalOptions, ModalConfig, } from './types.cjs';
|
|
3
|
+
export type { ModalProps, BaseModalProps, ModalContainerProps, ModalOverlayProps, UseModalOptions, ModalConfig, ModalPlacement, } from './types.cjs';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { A11yDialogConfig, A11yDialogProps } from 'react-a11y-dialog';
|
|
2
2
|
import { WithOptionalChildren } from '../../core/types.cjs';
|
|
3
|
+
export type ModalPlacement = "center" | "left" | "bottom" | "right";
|
|
3
4
|
export interface UseModalOptions extends Omit<A11yDialogProps, "id" | "closeButtonPosition"> {
|
|
4
5
|
id?: string;
|
|
5
6
|
/**
|
|
@@ -34,9 +35,26 @@ export interface ModalProps extends WithOptionalChildren {
|
|
|
34
35
|
padding?: 16 | 24 | 40;
|
|
35
36
|
}
|
|
36
37
|
export type BaseModalProps = Omit<ModalProps, "padding" | "component">;
|
|
38
|
+
export type ModalContainerProps = ModalConfig["container"] & BaseModalProps & {
|
|
39
|
+
/**
|
|
40
|
+
* Plassering og animasjon styres av containeren, siden det er den som
|
|
41
|
+
* håndterer viewport-layout og `aria-hidden`-tilstand.
|
|
42
|
+
*
|
|
43
|
+
* @default "center"
|
|
44
|
+
*/
|
|
45
|
+
placement?: ModalPlacement;
|
|
46
|
+
/**
|
|
47
|
+
* Slå på enkel slide-in-animasjon når modalen vises.
|
|
48
|
+
*
|
|
49
|
+
* @default false
|
|
50
|
+
*/
|
|
51
|
+
slideIn?: boolean;
|
|
52
|
+
};
|
|
37
53
|
export type ModalOverlayProps = ModalConfig["overlay"] & BaseModalProps & {
|
|
38
54
|
/**
|
|
39
55
|
* Rendre uten bakgrunnsfarge, men med click target for å lukke modalen ved klikk utenfor.
|
|
56
|
+
*
|
|
57
|
+
* @default false
|
|
40
58
|
*/
|
|
41
59
|
transparent?: boolean;
|
|
42
60
|
};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { HelpProps } from './types.js';
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const Help: ({ position, buttonText, showButtonText, iconPosition, className, children, ...rest }: HelpProps) => React.JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as o,
|
|
1
|
+
import{jsxs as o,jsx as t}from"react/jsx-runtime";import{c as e}from"../../../clsx-BeLtu-UY.js";import"react";import{Button as i}from"../button/Button.js";import{Icon as r}from"../icon/Icon.js";const s=({position:s="top",buttonText:a="Hjelp",showButtonText:p=!1,iconPosition:l="left",className:n,children:c,...h})=>o("div",{className:e("jkl-help",n),children:[t(i,{...h,title:a||h.title,iconPosition:l,variant:"ghost",className:"jkl-help-trigger",icon:t(r,{"aria-hidden":"true",children:"help"}),"data-testid":"jkl-help-trigger",popovertarget:`${a}-popover`,style:{anchorName:`${a}-popover`},children:p&&a}),t("output",{"aria-live":"assertive",children:t("div",{"data-position":s,popover:"auto",id:`${a}-popover`,className:"jkl-help-popover",children:c})})]});export{s as Help};
|
|
2
2
|
//# sourceMappingURL=Help.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Help.js","sources":["../../../../src/components/help/Help.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { Button } from \"../button/index.js\";\nimport { Icon } from \"../icon/Icon.js\";\nimport type { HelpProps } from \"./types.js\";\n\nexport const
|
|
1
|
+
{"version":3,"file":"Help.js","sources":["../../../../src/components/help/Help.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { Button } from \"../button/index.js\";\nimport { Icon } from \"../icon/Icon.js\";\nimport type { HelpProps } from \"./types.js\";\n\nexport const Help = ({\n position = \"top\",\n buttonText = \"Hjelp\",\n showButtonText = false,\n iconPosition = \"left\",\n className,\n children,\n ...rest\n}: HelpProps) => {\n return (\n <div className={clsx(\"jkl-help\", className)}>\n <Button\n {...rest}\n title={buttonText || rest.title}\n iconPosition={iconPosition}\n variant=\"ghost\"\n className={\"jkl-help-trigger\"}\n icon={<Icon aria-hidden=\"true\">help</Icon>}\n data-testid=\"jkl-help-trigger\"\n // @ts-ignore\n popovertarget={`${buttonText}-popover`}\n style={{ anchorName: `${buttonText}-popover` }}\n >\n {showButtonText && buttonText}\n </Button>\n\n <output aria-live=\"assertive\">\n <div\n data-position={position}\n // @ts-ignore\n popover=\"auto\"\n id={`${buttonText}-popover`}\n className=\"jkl-help-popover\"\n >\n {children}\n </div>\n </output>\n </div>\n );\n};\n"],"names":["Help","position","buttonText","showButtonText","iconPosition","className","children","rest","clsx","jsx","Button","title","variant","icon","Icon","popovertarget","style","anchorName","popover","id"],"mappings":"kMAMO,MAAMA,EAAO,EAChBC,SAAAA,EAAW,MACXC,WAAAA,EAAa,QACbC,eAAAA,GAAiB,EACjBC,aAAAA,EAAe,OACfC,UAAAA,EACAC,SAAAA,KACGC,OAGE,MAAA,CAAIF,UAAWG,EAAK,WAAYH,GAC7BC,SAAA,CAAAG,EAACC,EAAA,IACOH,EACJI,MAAOT,GAAcK,EAAKI,MAC1BP,aAAAA,EACAQ,QAAQ,QACRP,UAAW,mBACXQ,KAAMJ,EAACK,EAAA,CAAK,cAAY,OAAOR,SAAA,SAC/B,cAAY,mBAEZS,cAAe,GAAGb,YAClBc,MAAO,CAAEC,WAAY,GAAGf,aAEvBI,SAAAH,GAAkBD,IAGvBO,EAAC,SAAA,CAAO,YAAU,YACdH,SAAAG,EAAC,MAAA,CACG,gBAAeR,EAEfiB,QAAQ,OACRC,GAAI,GAAGjB,YACPG,UAAU,mBAETC,SAAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { Help } from './Help.js';
|
|
2
2
|
export type { HelpProps } from './types.js';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{Help as p}from"./Help.js";export{p as Help};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -8,6 +8,8 @@ export type HelpProps = Omit<ButtonProps<"button">, "iconPosition" | "icon"> & {
|
|
|
8
8
|
position?: "top" | "bottom" | "left" | "right";
|
|
9
9
|
/**
|
|
10
10
|
* @default "left"
|
|
11
|
+
*
|
|
12
|
+
* @deprecated siden teksten ikke lenger skal vises vil heller ikke posisjon være relevant
|
|
11
13
|
*/
|
|
12
14
|
iconPosition?: "left" | "right";
|
|
13
15
|
/**
|
|
@@ -16,6 +18,8 @@ export type HelpProps = Omit<ButtonProps<"button">, "iconPosition" | "icon"> & {
|
|
|
16
18
|
buttonText: string;
|
|
17
19
|
/**
|
|
18
20
|
* @default false
|
|
21
|
+
*
|
|
22
|
+
* @deprecated dersom du vil vise tekst knyttet til en hjelpetekst bruk heller Button
|
|
19
23
|
*/
|
|
20
24
|
showButtonText?: boolean;
|
|
21
25
|
/**
|
|
@@ -1,17 +1,10 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { IconButtonProps } from '../icon-button/types.js';
|
|
3
|
-
import { BaseModalProps, ModalProps } from './types.js';
|
|
3
|
+
import { BaseModalProps, ModalContainerProps, ModalProps } from './types.js';
|
|
4
4
|
/**
|
|
5
5
|
* Ment å brukes med `useModal`.
|
|
6
6
|
*/
|
|
7
|
-
export declare const ModalContainer: React.ForwardRefExoticComponent<Omit<
|
|
8
|
-
id: string;
|
|
9
|
-
ref: (node: React.ReactNode | HTMLElement) => void;
|
|
10
|
-
role: string;
|
|
11
|
-
'aria-modal': boolean;
|
|
12
|
-
'aria-hidden': boolean;
|
|
13
|
-
'aria-labelledby': string;
|
|
14
|
-
} & BaseModalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export declare const ModalContainer: React.ForwardRefExoticComponent<Omit<ModalContainerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
15
8
|
/**
|
|
16
9
|
* Ment å brukes med `useModal`.
|
|
17
10
|
*/
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as a}from"react/jsx-runtime";import{c as
|
|
1
|
+
import{jsx as a}from"react/jsx-runtime";import{c as l}from"../../../clsx-BeLtu-UY.js";import{forwardRef as o}from"react";import{IconButton as s}from"../icon-button/IconButton.js";import{CloseIcon as e}from"../icon/icons/CloseIcon.js";const d=o(({className:o,placement:s="center",slideIn:e,...d},t)=>a("div",{className:l("jkl-modal-container",`jkl-modal-container--placement-${s}`,{"jkl-modal-container--slide-in":e},o),...d,ref:t,"data-portal":!0}));d.displayName="ModalContainer";const t=o(({className:o,transparent:s,...e},d)=>a("div",{className:l("jkl-modal-overlay",o,{"jkl-modal-overlay--transparent":s}),...e,ref:d}));t.displayName="ModalOverlay";const m=o(({className:o,component:s,padding:e,style:d,...t},m)=>a(s||"div",{className:l("jkl jkl-modal",o),style:{"--modal-padding":e?`var(--jkl-spacing-${e})`:void 0,...d},...t,ref:m}));m.displayName="Modal";const n=o(({className:o,...s},e)=>a("div",{className:l("jkl-modal-header",o),...s,ref:e}));n.displayName="ModalHeader";const c=o(({className:o,...s},e)=>a("p",{className:l("jkl-modal-title",o),...s,ref:e}));c.displayName="ModalTitle";const i=o(({className:o,...d},t)=>a(s,{className:l("jkl-modal-close",o),"data-testautoid":"jkl-modal-close",...d,ref:t,children:a(e,{variant:"medium"})}));i.displayName="ModalCloseButton";const r=o(({className:o,...s},e)=>a("div",{className:l("jkl-modal-body",o),...s,ref:e}));r.displayName="ModalBody";const p=o(({className:o,...s},e)=>a("div",{className:l("jkl-modal-actions",o),...s,ref:e}));p.displayName="ModalActions";export{m as Modal,p as ModalActions,r as ModalBody,i as ModalCloseButton,d as ModalContainer,n as ModalHeader,t as ModalOverlay,c as ModalTitle};
|
|
2
2
|
//# sourceMappingURL=Modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sources":["../../../../src/components/modal/Modal.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport { IconButton } from \"../icon-button/IconButton.js\";\nimport type { IconButtonProps } from \"../icon-button/types.js\";\nimport { CloseIcon } from \"../icon/icons/CloseIcon.js\";\nimport type {\n BaseModalProps,\n ModalConfig,\n ModalOverlayProps,\n ModalProps,\n} from \"./types.js\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalContainer = forwardRef
|
|
1
|
+
{"version":3,"file":"Modal.js","sources":["../../../../src/components/modal/Modal.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport { IconButton } from \"../icon-button/IconButton.js\";\nimport type { IconButtonProps } from \"../icon-button/types.js\";\nimport { CloseIcon } from \"../icon/icons/CloseIcon.js\";\nimport type {\n BaseModalProps,\n ModalConfig,\n ModalContainerProps,\n ModalOverlayProps,\n ModalProps,\n} from \"./types.js\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalContainer = forwardRef<HTMLDivElement, ModalContainerProps>(\n ({ className, placement = \"center\", slideIn, ...rest }, ref) => {\n // TODO: 'data-portal' fjernes når modalen tar i bruk Popover komponenten. Issue: https://github.com/fremtind/jokul/issues/4356\n return (\n <div\n className={clsx(\n \"jkl-modal-container\",\n `jkl-modal-container--placement-${placement}`,\n { \"jkl-modal-container--slide-in\": slideIn },\n className,\n )}\n {...rest}\n ref={ref}\n data-portal\n />\n );\n },\n);\nModalContainer.displayName = \"ModalContainer\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalOverlay = forwardRef<HTMLDivElement, ModalOverlayProps>(\n ({ className, transparent, ...rest }, ref) => (\n <div\n className={clsx(\"jkl-modal-overlay\", className, {\n \"jkl-modal-overlay--transparent\": transparent,\n })}\n {...rest}\n ref={ref}\n />\n ),\n);\nModalOverlay.displayName = \"ModalOverlay\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const Modal = forwardRef<HTMLElement, ModalConfig[\"modal\"] & ModalProps>(\n ({ className, component, padding, style, ...rest }, ref) => {\n const C = component || \"div\";\n return (\n <C\n className={clsx(\"jkl jkl-modal\", className)}\n style={\n {\n \"--modal-padding\": padding\n ? `var(--jkl-spacing-${padding})`\n : undefined,\n ...style,\n } as React.CSSProperties\n }\n {...rest}\n ref={ref}\n />\n );\n },\n);\nModal.displayName = \"Modal\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalHeader = forwardRef<HTMLDivElement, BaseModalProps>(\n ({ className, ...rest }, ref) => (\n <div\n className={clsx(\"jkl-modal-header\", className)}\n {...rest}\n ref={ref}\n />\n ),\n);\nModalHeader.displayName = \"ModalHeader\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalTitle = forwardRef<\n HTMLParagraphElement,\n ModalConfig[\"title\"] & BaseModalProps\n>(({ className, ...rest }, ref) => (\n <p className={clsx(\"jkl-modal-title\", className)} {...rest} ref={ref} />\n));\nModalTitle.displayName = \"ModalTitle\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalCloseButton = forwardRef<\n HTMLButtonElement,\n Omit<ModalConfig[\"closeButton\"], \"onClick\"> &\n BaseModalProps &\n IconButtonProps\n>(({ className, ...rest }, ref) => (\n <IconButton\n className={clsx(\"jkl-modal-close\", className)}\n data-testautoid=\"jkl-modal-close\"\n {...rest}\n ref={ref}\n >\n <CloseIcon variant=\"medium\" />\n </IconButton>\n));\nModalCloseButton.displayName = \"ModalCloseButton\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalBody = forwardRef<HTMLDivElement, BaseModalProps>(\n ({ className, ...rest }, ref) => (\n <div\n className={clsx(\"jkl-modal-body\", className)}\n {...rest}\n ref={ref}\n />\n ),\n);\nModalBody.displayName = \"ModalBody\";\n\n/**\n * Ment å brukes med `useModal`.\n */\nexport const ModalActions = forwardRef<HTMLDivElement, BaseModalProps>(\n ({ className, ...rest }, ref) => (\n <div\n className={clsx(\"jkl-modal-actions\", className)}\n {...rest}\n ref={ref}\n />\n ),\n);\nModalActions.displayName = \"ModalActions\";\n"],"names":["ModalContainer","forwardRef","className","placement","slideIn","rest","ref","jsx","clsx","displayName","ModalOverlay","transparent","Modal","component","padding","style","ModalHeader","ModalTitle","ModalCloseButton","IconButton","children","CloseIcon","variant","ModalBody","ModalActions"],"mappings":"0OAgBO,MAAMA,EAAiBC,EAC1B,EAAGC,UAAAA,EAAWC,UAAAA,EAAY,SAAUC,QAAAA,KAAYC,GAAQC,IAGhDC,EAAC,MAAA,CACGL,UAAWM,EACP,sBACA,kCAAkCL,IAClC,CAAE,gCAAiCC,GACnCF,MAEAG,EACJC,IAAAA,EACA,eAAW,KAK3BN,EAAeS,YAAc,iBAKtB,MAAMC,EAAeT,EACxB,EAAGC,UAAAA,EAAWS,YAAAA,KAAgBN,GAAQC,IAClCC,EAAC,MAAA,CACGL,UAAWM,EAAK,oBAAqBN,EAAW,CAC5C,iCAAkCS,OAElCN,EACJC,IAAAA,KAIZI,EAAaD,YAAc,eAKpB,MAAMG,EAAQX,EACjB,EAAGC,UAAAA,EAAWW,UAAAA,EAAWC,QAAAA,EAASC,MAAAA,KAAUV,GAAQC,IAG5CC,EAFMM,GAAa,MAElB,CACGX,UAAWM,EAAK,gBAAiBN,GACjCa,MACI,CACI,kBAAmBD,EACb,qBAAqBA,UACrB,KACHC,MAGPV,EACJC,IAAAA,KAKhBM,EAAMH,YAAc,QAKb,MAAMO,EAAcf,EACvB,EAAGC,UAAAA,KAAcG,GAAQC,IACrBC,EAAC,MAAA,CACGL,UAAWM,EAAK,mBAAoBN,MAChCG,EACJC,IAAAA,KAIZU,EAAYP,YAAc,cAKnB,MAAMQ,EAAahB,EAGxB,EAAGC,UAAAA,KAAcG,GAAQC,MACtB,IAAA,CAAEJ,UAAWM,EAAK,kBAAmBN,MAAgBG,EAAMC,IAAAA,KAEhEW,EAAWR,YAAc,aAKlB,MAAMS,EAAmBjB,EAK9B,EAAGC,UAAAA,KAAcG,GAAQC,IACvBC,EAACY,EAAA,CACGjB,UAAWM,EAAK,kBAAmBN,GACnC,kBAAgB,qBACZG,EACJC,IAAAA,EAEAc,SAAAb,EAACc,EAAA,CAAUC,QAAQ,cAG3BJ,EAAiBT,YAAc,mBAKxB,MAAMc,EAAYtB,EACrB,EAAGC,UAAAA,KAAcG,GAAQC,IACrBC,EAAC,MAAA,CACGL,UAAWM,EAAK,iBAAkBN,MAC9BG,EACJC,IAAAA,KAIZiB,EAAUd,YAAc,YAKjB,MAAMe,EAAevB,EACxB,EAAGC,UAAAA,KAAcG,GAAQC,IACrBC,EAAC,MAAA,CACGL,UAAWM,EAAK,oBAAqBN,MACjCG,EACJC,IAAAA,KAIZkB,EAAaf,YAAc"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { ModalContainer, ModalOverlay, Modal, ModalHeader, ModalTitle, ModalCloseButton, ModalBody, ModalActions, } from './Modal.js';
|
|
2
2
|
export { useModal, type ModalInstance } from './useModal.js';
|
|
3
|
-
export type { ModalProps, BaseModalProps, ModalOverlayProps, UseModalOptions, ModalConfig, } from './types.js';
|
|
3
|
+
export type { ModalProps, BaseModalProps, ModalContainerProps, ModalOverlayProps, UseModalOptions, ModalConfig, ModalPlacement, } from './types.js';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { A11yDialogConfig, A11yDialogProps } from 'react-a11y-dialog';
|
|
2
2
|
import { WithOptionalChildren } from '../../core/types.js';
|
|
3
|
+
export type ModalPlacement = "center" | "left" | "bottom" | "right";
|
|
3
4
|
export interface UseModalOptions extends Omit<A11yDialogProps, "id" | "closeButtonPosition"> {
|
|
4
5
|
id?: string;
|
|
5
6
|
/**
|
|
@@ -34,9 +35,26 @@ export interface ModalProps extends WithOptionalChildren {
|
|
|
34
35
|
padding?: 16 | 24 | 40;
|
|
35
36
|
}
|
|
36
37
|
export type BaseModalProps = Omit<ModalProps, "padding" | "component">;
|
|
38
|
+
export type ModalContainerProps = ModalConfig["container"] & BaseModalProps & {
|
|
39
|
+
/**
|
|
40
|
+
* Plassering og animasjon styres av containeren, siden det er den som
|
|
41
|
+
* håndterer viewport-layout og `aria-hidden`-tilstand.
|
|
42
|
+
*
|
|
43
|
+
* @default "center"
|
|
44
|
+
*/
|
|
45
|
+
placement?: ModalPlacement;
|
|
46
|
+
/**
|
|
47
|
+
* Slå på enkel slide-in-animasjon når modalen vises.
|
|
48
|
+
*
|
|
49
|
+
* @default false
|
|
50
|
+
*/
|
|
51
|
+
slideIn?: boolean;
|
|
52
|
+
};
|
|
37
53
|
export type ModalOverlayProps = ModalConfig["overlay"] & BaseModalProps & {
|
|
38
54
|
/**
|
|
39
55
|
* Rendre uten bakgrunnsfarge, men med click target for å lukke modalen ved klikk utenfor.
|
|
56
|
+
*
|
|
57
|
+
* @default false
|
|
40
58
|
*/
|
|
41
59
|
transparent?: boolean;
|
|
42
60
|
};
|
package/package.json
CHANGED
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
.jkl-countdown__tracker {
|
|
29
|
-
animation: jkl-downcount-
|
|
29
|
+
animation: jkl-downcount-unots5l var(--duration) linear forwards;
|
|
30
30
|
animation-play-state: var(--play-state, running);
|
|
31
31
|
}
|
|
32
|
-
@keyframes jkl-downcount-
|
|
32
|
+
@keyframes jkl-downcount-unots5l {
|
|
33
33
|
from {
|
|
34
34
|
width: 100%;
|
|
35
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer jokul.components{.jkl-countdown{--track-color:var(--jkl-color-border-separator);--bar-color:var(--jkl-color-border-input-focus);--bar-height:0.25rem;background-color:var(--track-color);border-radius:6.25rem;height:var(--bar-height);overflow:hidden;width:100%}.jkl-countdown__tracker{background-color:var(--bar-color);display:block;height:var(--bar-height)}@media screen and (forced-colors:active){.jkl-countdown{background-color:Canvas}.jkl-countdown__tracker{background-color:CanvasText}}.jkl-countdown__tracker{animation:jkl-downcount-
|
|
1
|
+
@layer jokul.components{.jkl-countdown{--track-color:var(--jkl-color-border-separator);--bar-color:var(--jkl-color-border-input-focus);--bar-height:0.25rem;background-color:var(--track-color);border-radius:6.25rem;height:var(--bar-height);overflow:hidden;width:100%}.jkl-countdown__tracker{background-color:var(--bar-color);display:block;height:var(--bar-height)}@media screen and (forced-colors:active){.jkl-countdown{background-color:Canvas}.jkl-countdown__tracker{background-color:CanvasText}}.jkl-countdown__tracker{animation:jkl-downcount-unots5l var(--duration) linear forwards;animation-play-state:var(--play-state,running)}@keyframes jkl-downcount-unots5l{0%{width:100%}to{width:0}}}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
@use "../../core/jkl";
|
|
2
2
|
|
|
3
3
|
@layer jokul.components {
|
|
4
|
-
// Custom tweaks for iPhone SE
|
|
5
|
-
@include jkl.screen-to(375px) {
|
|
6
|
-
--jkl-calendar-date-size: var(--jkl-unit-40);
|
|
7
|
-
}
|
|
8
|
-
|
|
9
4
|
.jkl-calendar-date-button {
|
|
10
5
|
--jkl-calendar-date-size: var(--jkl-unit-50);
|
|
11
6
|
|
|
7
|
+
// Custom tweaks for iPhone SE
|
|
8
|
+
@include jkl.screen-to(375px) {
|
|
9
|
+
--jkl-calendar-date-size: var(--jkl-unit-40);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
12
|
@include jkl.text-style("text-small");
|
|
13
13
|
|
|
14
14
|
appearance: none;
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
@use "../../core/jkl";
|
|
2
2
|
|
|
3
3
|
@layer jokul.components {
|
|
4
|
-
|
|
5
|
-
// Custom tweaks for iPhone SE
|
|
6
|
-
@include jkl.screen-to(375px) {
|
|
7
|
-
--jkl-calendar-padding: var(--jkl-unit-05) var(--jkl-unit-10) var(--jkl-unit-20);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
4
|
.jkl-calendar {
|
|
11
5
|
--jkl-calendar-padding: var(--jkl-unit-15) var(--jkl-unit-20) var(--jkl-unit-20);
|
|
12
6
|
--jkl-calendar-gap: var(--jkl-unit-15);
|
|
13
7
|
|
|
8
|
+
// Custom tweaks for iPhone SE
|
|
9
|
+
@include jkl.screen-to(375px) {
|
|
10
|
+
--jkl-calendar-padding: var(--jkl-unit-05) var(--jkl-unit-10) var(--jkl-unit-20);
|
|
11
|
+
}
|
|
12
|
+
|
|
14
13
|
display: block;
|
|
15
14
|
background-color: var(--jkl-color-background-container-high);
|
|
16
15
|
color: var(--jkl-color);
|
|
@@ -2,12 +2,16 @@
|
|
|
2
2
|
* Do not edit directly, this file was auto-generated.
|
|
3
3
|
*/
|
|
4
4
|
@layer jokul.components {
|
|
5
|
-
@media (width >= 0) and (max-width: 374px) {
|
|
6
|
-
--jkl-calendar-padding: var(--jkl-unit-05) var(--jkl-unit-10) var(--jkl-unit-20);
|
|
7
|
-
}
|
|
8
5
|
.jkl-calendar {
|
|
9
6
|
--jkl-calendar-padding: var(--jkl-unit-15) var(--jkl-unit-20) var(--jkl-unit-20);
|
|
10
7
|
--jkl-calendar-gap: var(--jkl-unit-15);
|
|
8
|
+
}
|
|
9
|
+
@media (width >= 0) and (max-width: 374px) {
|
|
10
|
+
.jkl-calendar {
|
|
11
|
+
--jkl-calendar-padding: var(--jkl-unit-05) var(--jkl-unit-10) var(--jkl-unit-20);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
.jkl-calendar {
|
|
11
15
|
display: block;
|
|
12
16
|
background-color: var(--jkl-color-background-container-high);
|
|
13
17
|
color: var(--jkl-color);
|
|
@@ -120,11 +124,15 @@
|
|
|
120
124
|
}
|
|
121
125
|
}
|
|
122
126
|
@layer jokul.components {
|
|
127
|
+
.jkl-calendar-date-button {
|
|
128
|
+
--jkl-calendar-date-size: var(--jkl-unit-50);
|
|
129
|
+
}
|
|
123
130
|
@media (width >= 0) and (max-width: 374px) {
|
|
124
|
-
|
|
131
|
+
.jkl-calendar-date-button {
|
|
132
|
+
--jkl-calendar-date-size: var(--jkl-unit-40);
|
|
133
|
+
}
|
|
125
134
|
}
|
|
126
135
|
.jkl-calendar-date-button {
|
|
127
|
-
--jkl-calendar-date-size: var(--jkl-unit-50);
|
|
128
136
|
font-size: var(--jkl-font-size-2);
|
|
129
137
|
line-height: var(--jkl-line-height-tight);
|
|
130
138
|
font-weight: 400;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer jokul.components{
|
|
1
|
+
@layer jokul.components{.jkl-calendar{--jkl-calendar-padding:var(--jkl-unit-15) var(--jkl-unit-20) var(--jkl-unit-20);--jkl-calendar-gap:var(--jkl-unit-15)}@media (width >= 0) and (max-width:374px){.jkl-calendar{--jkl-calendar-padding:var(--jkl-unit-05) var(--jkl-unit-10) var(--jkl-unit-20)}}.jkl-calendar{background-color:var(--jkl-color-background-container-high);color:var(--jkl-color);display:block}.jkl-calendar__padding{box-sizing:border-box;display:flex;flex-direction:column;gap:var(--jkl-calendar-gap)}@media screen and (forced-colors:active){.jkl-calendar__padding{border:1px solid CanvasText}}}@layer jokul.components{.jkl-calendar-navigation{align-items:center;border:0;box-sizing:border-box;display:flex;justify-content:space-between;margin:0;padding:0;width:100%}.jkl-calendar-navigation-dropdown{--chevron-size:1.5rem;align-items:center;display:inline-flex}}@layer jokul.components{.jkl-calendar-navigation-dropdown>*{cursor:pointer}.jkl-calendar-navigation-dropdown__select{-webkit-appearance:none;appearance:none;font-size:var(--jkl-font-size-2);font-weight:400;line-height:var(--jkl-line-height-tight);--jkl-icon-weight:300;background-color:transparent;border:none;border-radius:0;color:inherit;font-weight:700;height:2.5rem;margin:0;padding:0;text-align:end;text-align-last:end;-webkit-padding-end:var(--chevron-size);border-style:none;outline:0;outline-style:none;padding-inline-end:var(--chevron-size)}.jkl-calendar-navigation-dropdown__select:active,.jkl-calendar-navigation-dropdown__select:focus,.jkl-calendar-navigation-dropdown__select:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-calendar-navigation-dropdown__select{border-style:revert;outline:revert;outline-style:revert}.jkl-calendar-navigation-dropdown__select:active,.jkl-calendar-navigation-dropdown__select:focus,.jkl-calendar-navigation-dropdown__select:hover{outline:revert;outline-style:revert}}.jkl-calendar-navigation-dropdown__select option{background-color:var(--jkl-color-background-container-high);color:var(--jkl-color-text-default);text-align:left}.jkl-calendar-navigation-dropdown__select:focus-visible{outline:3px solid var(--jkl-color-border-action);outline-offset:3px}.jkl-calendar-navigation-dropdown__chevron{margin-left:calc(var(--chevron-size)*-1);pointer-events:none}.jkl-calendar-navigation-dropdown+.jkl-calendar-navigation-dropdown{-webkit-margin-start:var(--jkl-unit-10);margin-inline-start:var(--jkl-unit-10)}}@layer jokul.components{.jkl-calendar-table th{font-size:var(--jkl-font-size-2);font-weight:400;line-height:var(--jkl-line-height-tight);--jkl-icon-weight:300;padding-bottom:var(--jkl-unit-10)}.jkl-calendar-table td{text-align:center}.jkl-calendar-table td+td,.jkl-calendar-table th+th{padding-left:calc(var(--jkl-unit-10)/2)}.jkl-calendar-table tr+tr>td{padding-top:calc(var(--jkl-unit-10)/2)}}@layer jokul.components{.jkl-calendar-date-button{--jkl-calendar-date-size:var(--jkl-unit-50)}@media (width >= 0) and (max-width:374px){.jkl-calendar-date-button{--jkl-calendar-date-size:var(--jkl-unit-40)}}.jkl-calendar-date-button{font-size:var(--jkl-font-size-2);font-weight:400;line-height:var(--jkl-line-height-tight);--jkl-icon-weight:300;align-items:center;-webkit-appearance:none;appearance:none;background-color:transparent;border-radius:50%;border-style:none;box-sizing:border-box;color:var(--jkl-color);display:inline-flex;height:var(--jkl-calendar-date-size);justify-content:center;margin:var(--jkl-calendar-date-margin);outline:0;outline-style:none;padding:0;padding-top:var(--jkl-unit-02);position:relative;transition-duration:75ms;transition-property:color,background-color,box-shadow;transition-timing-function:ease-out;width:var(--jkl-calendar-date-size)}.jkl-calendar-date-button:active,.jkl-calendar-date-button:focus,.jkl-calendar-date-button:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-calendar-date-button{border-style:revert;outline:revert;outline-style:revert}.jkl-calendar-date-button:active,.jkl-calendar-date-button:focus,.jkl-calendar-date-button:hover{outline:revert;outline-style:revert}}.jkl-calendar-date-button[data-adjacent=true]{font-size:var(--jkl-font-size-2);font-weight:400;line-height:var(--jkl-line-height-tight);--jkl-icon-weight:300;color:var(--jkl-color-text-subdued);padding:0}.jkl-calendar-date-button[aria-current=date]{font-weight:700}.jkl-calendar-date-button:hover:not(:disabled){background-color:var(--jkl-color-background-interactive-hover);cursor:pointer}.jkl-calendar-date-button[aria-pressed=true]{background-color:var(--jkl-color-background-container-inverted);color:var(--jkl-color-text-inverted);cursor:pointer}.jkl-calendar-date-button[aria-pressed=true]:hover{color:var(--jkl-color)}.jkl-calendar-date-button:disabled{color:color(from var(--jkl-color-text-subdued) srgb r g b/70%)}.jkl-calendar-date-button:focus-visible{outline:3px solid var(--jkl-color-border-action);outline-offset:3px}}@layer jokul.components{.jkl-datepicker{align-items:flex-start;border-style:none;display:flex;flex-direction:column;outline:0;outline-style:none;position:relative}.jkl-datepicker:active,.jkl-datepicker:focus,.jkl-datepicker:hover{outline:0;outline-style:none}@media screen and (forced-colors:active){.jkl-datepicker{border-style:revert;outline:revert;outline-style:revert}.jkl-datepicker:active,.jkl-datepicker:focus,.jkl-datepicker:hover{outline:revert;outline-style:revert}}.jkl-datepicker__input-wrapper{display:contents;position:relative}.jkl-datepicker .jkl-datepicker__input{padding-bottom:calc(var(--jkl-text-input-vertical-padding) - .08em);padding-top:calc(var(--jkl-text-input-vertical-padding) + .08em)}.jkl-datepicker__calendar-wrapper{left:0;position:absolute;top:calc(100% + .875rem);z-index:7000}@media (width >= 0) and (max-width:679px){.jkl-datepicker__calendar-wrapper{left:-1.15rem}}@media (width >= 0) and (max-width:374px){.jkl-datepicker__calendar-wrapper{left:-2.5rem}}}
|
|
@@ -24,12 +24,12 @@
|
|
|
24
24
|
--jkl-icon-size: 1.2em;
|
|
25
25
|
}
|
|
26
26
|
.jkl-feedback__fade-in {
|
|
27
|
-
animation: jkl-show-
|
|
27
|
+
animation: jkl-show-u73j7jk 0.25s ease-out;
|
|
28
28
|
}
|
|
29
29
|
.jkl-feedback__buttons {
|
|
30
30
|
display: flex;
|
|
31
31
|
}
|
|
32
|
-
@keyframes jkl-show-
|
|
32
|
+
@keyframes jkl-show-u73j7jk {
|
|
33
33
|
from {
|
|
34
34
|
transform: translate3d(0, 0.5rem, 0);
|
|
35
35
|
opacity: 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer jokul.components{.jkl-feedback{max-width:34.375rem}.jkl-feedback__submit-wrapper{transition-duration:.25s;transition-property:height;transition-timing-function:ease;width:100%}.jkl-feedback__submit-wrapper--hidden{display:none}.jkl-feedback__step-counter{color:var(--jkl-color-text-subdued);font-size:var(--jkl-font-size-2);font-weight:400;line-height:var(--jkl-line-height-relaxed);margin-bottom:var(--jkl-unit-20);--jkl-icon-weight:300;--jkl-icon-size:1.2em}.jkl-feedback__fade-in{animation:jkl-show-
|
|
1
|
+
@layer jokul.components{.jkl-feedback{max-width:34.375rem}.jkl-feedback__submit-wrapper{transition-duration:.25s;transition-property:height;transition-timing-function:ease;width:100%}.jkl-feedback__submit-wrapper--hidden{display:none}.jkl-feedback__step-counter{color:var(--jkl-color-text-subdued);font-size:var(--jkl-font-size-2);font-weight:400;line-height:var(--jkl-line-height-relaxed);margin-bottom:var(--jkl-unit-20);--jkl-icon-weight:300;--jkl-icon-size:1.2em}.jkl-feedback__fade-in{animation:jkl-show-u73j7jk .25s ease-out}.jkl-feedback__buttons{display:flex}@keyframes jkl-show-u73j7jk{0%{opacity:0;transform:translate3d(0,.5rem,0)}}.jkl-feedback-smileys{display:flex;flex-wrap:nowrap;gap:.75rem;justify-content:space-between;margin-top:var(--jkl-unit-10);max-width:22.5rem;width:100%}.jkl-feedback-smiley-option{color:var(--jkl-color-text-subdued);cursor:pointer;display:inline-block;height:2.5rem;position:relative;transform:translateZ(0);transition-duration:.15s;transition-property:transform,color;transition-timing-function:ease;width:2.5rem}@media screen and (forced-colors:active){.jkl-feedback-smiley-option,.jkl-feedback-smiley-option path,.jkl-feedback-smiley-option svg{fill:ButtonText;stroke:ButtonFace}}.jkl-feedback-smiley-option:after,.jkl-feedback-smiley-option:before{border-radius:50%;content:"";opacity:0;position:absolute;transition-duration:.15s;transition-property:opacity;transition-timing-function:ease}.jkl-feedback-smiley-option:after{box-shadow:0 0 0 .125rem currentColor;inset:-.125rem -.125rem -.125rem -.125rem}.jkl-feedback-smiley-option:before{box-shadow:0 .125rem 1.875rem rgba(0,0,0,.1);inset:0}.jkl-feedback-smiley-option:hover{color:var(--jkl-color-text-default)}input:checked+.jkl-feedback-smiley-option{color:var(--jkl-color-text-default);transform:translate3d(0,-20%,0)}input:checked+.jkl-feedback-smiley-option:before{opacity:1}html:not([data-mousenavigation]):not([data-touchnavigation]) input:focus+.jkl-feedback-smiley-option:after{opacity:1}}
|
|
@@ -344,22 +344,22 @@
|
|
|
344
344
|
animation: 2500ms linear infinite;
|
|
345
345
|
}
|
|
346
346
|
.jkl-loader__dot--left {
|
|
347
|
-
animation-name: jkl-loader-left-spin-
|
|
347
|
+
animation-name: jkl-loader-left-spin-ul0l8d9;
|
|
348
348
|
margin-right: calc(var(--jkl-loader-spacing) * 0.9);
|
|
349
349
|
}
|
|
350
350
|
.jkl-loader__dot--middle {
|
|
351
|
-
animation-name: jkl-loader-middle-spin-
|
|
351
|
+
animation-name: jkl-loader-middle-spin-ul0l8dd;
|
|
352
352
|
margin-right: var(--jkl-loader-spacing);
|
|
353
353
|
}
|
|
354
354
|
.jkl-loader__dot--right {
|
|
355
|
-
animation-name: jkl-loader-right-spin-
|
|
355
|
+
animation-name: jkl-loader-right-spin-ul0l8dm;
|
|
356
356
|
}
|
|
357
357
|
@media screen and (forced-colors: active) {
|
|
358
358
|
.jkl-loader__dot {
|
|
359
359
|
background-color: CanvasText;
|
|
360
360
|
}
|
|
361
361
|
}
|
|
362
|
-
@keyframes jkl-loader-left-spin-
|
|
362
|
+
@keyframes jkl-loader-left-spin-ul0l8d9 {
|
|
363
363
|
0% {
|
|
364
364
|
transform: rotate(0) scale(0);
|
|
365
365
|
}
|
|
@@ -373,7 +373,7 @@
|
|
|
373
373
|
transform: rotate(180deg) scale(0);
|
|
374
374
|
}
|
|
375
375
|
}
|
|
376
|
-
@keyframes jkl-loader-middle-spin-
|
|
376
|
+
@keyframes jkl-loader-middle-spin-ul0l8dd {
|
|
377
377
|
0% {
|
|
378
378
|
transform: rotate(20deg) scale(0);
|
|
379
379
|
}
|
|
@@ -390,7 +390,7 @@
|
|
|
390
390
|
transform: rotate(200deg) scale(0);
|
|
391
391
|
}
|
|
392
392
|
}
|
|
393
|
-
@keyframes jkl-loader-right-spin-
|
|
393
|
+
@keyframes jkl-loader-right-spin-ul0l8dm {
|
|
394
394
|
0% {
|
|
395
395
|
transform: rotate(40deg) scale(0);
|
|
396
396
|
}
|
|
@@ -430,7 +430,7 @@
|
|
|
430
430
|
@media screen and (forced-colors: active) {
|
|
431
431
|
.jkl-skeleton-element {
|
|
432
432
|
border: 1px solid CanvasText;
|
|
433
|
-
animation: 2s ease infinite jkl-blink-
|
|
433
|
+
animation: 2s ease infinite jkl-blink-ul0l8dx;
|
|
434
434
|
}
|
|
435
435
|
}
|
|
436
436
|
.jkl-skeleton-input {
|
|
@@ -478,10 +478,10 @@
|
|
|
478
478
|
}
|
|
479
479
|
@media screen and (forced-colors: active) {
|
|
480
480
|
.jkl-skeleton-table {
|
|
481
|
-
animation: 2s ease-in-out infinite jkl-blink-
|
|
481
|
+
animation: 2s ease-in-out infinite jkl-blink-ul0l8dx;
|
|
482
482
|
}
|
|
483
483
|
}
|
|
484
|
-
@keyframes jkl-blink-
|
|
484
|
+
@keyframes jkl-blink-ul0l8dx {
|
|
485
485
|
0% {
|
|
486
486
|
opacity: 1;
|
|
487
487
|
}
|