@semcore/feedback-form 17.2.1 → 17.2.2-prerelease.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 +7 -0
- package/lib/cjs/FeedbackForm.js +9 -11
- package/lib/cjs/FeedbackForm.js.map +1 -1
- package/lib/cjs/FeedbackForm.type.js +2 -0
- package/lib/cjs/FeedbackForm.type.js.map +1 -0
- package/lib/cjs/{component/feedback-rating/FeedbackRating.js → FeedbackRating.js} +11 -12
- package/lib/cjs/FeedbackRating.js.map +1 -0
- package/lib/cjs/FeedbackRating.type.js.map +1 -0
- package/lib/cjs/component/checkbox-button/CheckboxButton.js +3 -3
- package/lib/cjs/component/checkbox-button/CheckboxButton.js.map +1 -1
- package/lib/cjs/component/checkbox-button/CheckboxButton.type.js +2 -0
- package/lib/cjs/component/checkbox-button/CheckboxButton.type.js.map +1 -0
- package/lib/cjs/component/feedback-item/FeedbackItem.js +26 -22
- package/lib/cjs/component/feedback-item/FeedbackItem.js.map +1 -1
- package/lib/cjs/component/feedback-item/FeedbackItem.type.js +2 -0
- package/lib/cjs/component/feedback-item/FeedbackItem.type.js.map +1 -0
- package/lib/cjs/component/slider-rating/SliderRating.js +6 -6
- package/lib/cjs/component/slider-rating/SliderRating.js.map +1 -1
- package/lib/cjs/component/slider-rating/SliderRating.type.js +2 -0
- package/lib/cjs/component/slider-rating/SliderRating.type.js.map +1 -0
- package/lib/cjs/component/submit-button/SubmitButton.js.map +1 -1
- package/lib/cjs/component/submit-button/SubmitButton.type.js +2 -0
- package/lib/cjs/component/submit-button/SubmitButton.type.js.map +1 -0
- package/lib/cjs/index.js +16 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/es6/FeedbackForm.js +9 -11
- package/lib/es6/FeedbackForm.js.map +1 -1
- package/lib/es6/FeedbackForm.type.js +2 -0
- package/lib/es6/FeedbackForm.type.js.map +1 -0
- package/lib/es6/{component/feedback-rating/FeedbackRating.js → FeedbackRating.js} +11 -12
- package/lib/es6/FeedbackRating.js.map +1 -0
- package/lib/es6/FeedbackRating.type.js.map +1 -0
- package/lib/es6/component/checkbox-button/CheckboxButton.js +3 -3
- package/lib/es6/component/checkbox-button/CheckboxButton.js.map +1 -1
- package/lib/es6/component/checkbox-button/CheckboxButton.type.js +2 -0
- package/lib/es6/component/checkbox-button/CheckboxButton.type.js.map +1 -0
- package/lib/es6/component/feedback-item/FeedbackItem.js +26 -22
- package/lib/es6/component/feedback-item/FeedbackItem.js.map +1 -1
- package/lib/es6/component/feedback-item/FeedbackItem.type.js +2 -0
- package/lib/es6/component/feedback-item/FeedbackItem.type.js.map +1 -0
- package/lib/es6/component/slider-rating/SliderRating.js +6 -6
- package/lib/es6/component/slider-rating/SliderRating.js.map +1 -1
- package/lib/es6/component/slider-rating/SliderRating.type.js +2 -0
- package/lib/es6/component/slider-rating/SliderRating.type.js.map +1 -0
- package/lib/es6/component/submit-button/SubmitButton.js.map +1 -1
- package/lib/es6/component/submit-button/SubmitButton.type.js +2 -0
- package/lib/es6/component/submit-button/SubmitButton.type.js.map +1 -0
- package/lib/es6/index.js +2 -1
- package/lib/es6/index.js.map +1 -1
- package/lib/esm/FeedbackForm.mjs +10 -12
- package/lib/esm/FeedbackForm.type.mjs +1 -0
- package/lib/esm/{component/feedback-rating/FeedbackRating.mjs → FeedbackRating.mjs} +11 -13
- package/lib/esm/component/checkbox-button/CheckboxButton.mjs +4 -4
- package/lib/esm/component/feedback-item/FeedbackItem.mjs +26 -23
- package/lib/esm/component/slider-rating/SliderRating.mjs +7 -7
- package/lib/esm/index.mjs +2 -1
- package/lib/types/FeedbackForm.d.ts +8 -0
- package/lib/types/FeedbackForm.type.d.ts +53 -0
- package/lib/types/FeedbackRating.d.ts +8 -0
- package/lib/types/FeedbackRating.type.d.ts +93 -0
- package/lib/types/component/checkbox-button/CheckboxButton.d.ts +2 -2
- package/lib/types/component/checkbox-button/CheckboxButton.type.d.ts +11 -0
- package/lib/types/component/feedback-item/FeedbackItem.d.ts +5 -1
- package/lib/types/component/feedback-item/FeedbackItem.type.d.ts +22 -0
- package/lib/types/component/slider-rating/SliderRating.d.ts +2 -14
- package/lib/types/component/slider-rating/SliderRating.type.d.ts +28 -0
- package/lib/types/component/submit-button/SubmitButton.d.ts +3 -2
- package/lib/types/component/submit-button/SubmitButton.type.d.ts +5 -0
- package/lib/types/index.d.ts +3 -39
- package/package.json +6 -6
- package/vite.config.ts +1 -1
- package/vitest.config.mts +1 -1
- package/lib/cjs/component/feedback-rating/FeedbackRating.js.map +0 -1
- package/lib/cjs/component/feedback-rating/FeedbackRating.type.js.map +0 -1
- package/lib/cjs/index.d.js +0 -14
- package/lib/cjs/index.d.js.map +0 -1
- package/lib/es6/component/feedback-rating/FeedbackRating.js.map +0 -1
- package/lib/es6/component/feedback-rating/FeedbackRating.type.js.map +0 -1
- package/lib/es6/index.d.js +0 -3
- package/lib/es6/index.d.js.map +0 -1
- package/lib/types/component/feedback-rating/FeedbackRating.d.ts +0 -61
- package/lib/types/component/feedback-rating/FeedbackRating.type.d.ts +0 -73
- /package/lib/cjs/{component/feedback-rating/FeedbackRating.type.js → FeedbackRating.type.js} +0 -0
- /package/lib/es6/{component/feedback-rating/FeedbackRating.type.js → FeedbackRating.type.js} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
|
|
4
4
|
|
|
5
|
+
## [17.2.2] - 2026-07-09
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- Rewrite component to TS. Deprecate atomic types. Atomic types are part
|
|
10
|
+
of `NSFeedbackForm` namespace.
|
|
11
|
+
|
|
5
12
|
## [17.2.1] - 2026-06-26
|
|
6
13
|
|
|
7
14
|
### Fixed
|
package/lib/cjs/FeedbackForm.js
CHANGED
|
@@ -18,15 +18,15 @@ var _reactFinalForm = require("react-final-form");
|
|
|
18
18
|
var _FeedbackItem = require("./component/feedback-item/FeedbackItem");
|
|
19
19
|
var _SubmitButton = require("./component/submit-button/SubmitButton");
|
|
20
20
|
/*!__reshadow-styles__:"./style/feedback-form.shadow.css"*/
|
|
21
|
-
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
21
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SFeedbackForm_183nj_gg_{max-width:320px}.___SCancel_183nj_gg_,.___SSubmit_183nj_gg_{display:inline-flex;margin-right:var(--intergalactic-spacing-2x,8px)}.___SNotice_183nj_gg_{padding:var(--intergalactic-spacing-3x,12px) var(--intergalactic-spacing-4x,16px);border-width:1px 0 0;border-top-style:solid;border-radius:0 0 var(--intergalactic-surface-rounded,8px) var(--intergalactic-surface-rounded,8px)}.___SSuccess_183nj_gg_{display:flex;align-items:center;flex-direction:column;width:320px;padding:var(--intergalactic-spacing-10x,40px);box-sizing:border-box;outline-color:#0000}.___SEmail_183nj_gg_{margin-bottom:calc(var(--intergalactic-spacing-4x, 16px));width:80px;height:80px;background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' fill='none' viewBox='0 0 80 80'%3E%3Cpath fill='%2345e0a8' d='M28.163 6a1.57 1.57 0 0 0-1.12.46l-12.91 12.92A34.6 34.6 0 0 0 25.36 75.813a34.6 34.6 0 0 0 37.713-7.503l12.91-12.91a1.58 1.58 0 0 0 .47-1.12V6.89a.9.9 0 0 0-.9-.89z'/%3E%3Cpath fill='%23fff' d='m29 45.285.2.35c6.19-3.45 24.19-13.67 27.53-10.53-1.13-3.1-17.03.33-27.73 10.18M28.44 31.634c-1.81 6-9.21 24.47-13.44 30.31l3 .91 1.58-1.32c4.22-9.55 10-26 10.31-31.46-.5-.26-.96.14-1.45 1.56'/%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M15 62.008c4.23-5.84 11.63-24.27 13.44-30.34s5.05 6 3.23 11.12'/%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M28 45.942c10.68-10.36 27.27-14 28.43-10.84.69 1.89-13.43 6.26-18.41 12.32'/%3E%3Cpath fill='%23fff' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M44.45 21.93c-3.24-1.16-8.59-2.89-11.45-3.69 4.12-1.83 37-14 39.67-15.24-.92 4.11-4.92 18.28-6.71 24.93-4.83-1.68-9.73-3.15-12.93-4.19-2 2.65-3.808 5.441-5.41 8.35-1.18-3.86-2.33-8.32-3.17-10.16'/%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M45 22.08 61.74 11M53 23.73 72.64 3M48 32.58 55.86 25'/%3E%3Cpath fill='%23000' d='m48.23 30.77 3.46-5.64.97-1.13 2.07.61.43-.13-3.36 3.43-2.47 2.27L48 31.29z'/%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M33.81 22 23 27.12M40.89 23 34 27.37M62.04 29 58 38.85'/%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M46.68 41c3.61 2.42-1.87 8.52-3.68 10.12'/%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M47.17 44c4.14 2.09 1.16 7.76-1.17 10.6'/%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M48.86 49C54.37 53.48 36.31 72.72 35 73.78'/%3E%3Cmask id='a' width='73' height='73' x='4' y='6' maskUnits='userSpaceOnUse' style='mask-type:alpha'%3E%3Cpath fill='%2345dfa7' d='M28.163 6a1.57 1.57 0 0 0-1.12.46l-12.91 12.92A34.6 34.6 0 0 0 25.36 75.813a34.6 34.6 0 0 0 37.713-7.503l12.91-12.91a1.58 1.58 0 0 0 .47-1.12V6.89a.9.9 0 0 0-.9-.89z'/%3E%3C/mask%3E%3Cg mask='url(%23a)'%3E%3Cpath fill='%23000' d='M5 74.687c2.49-2.34 8.24-11 9.52-13.44 13.66-2.12 20.19 10 20.46 13.52a116 116 0 0 1-7.76 14.13'/%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='.75' d='M5 74.687c2.49-2.34 8.24-11 9.52-13.44 13.66-2.12 20.19 10 20.46 13.52a116 116 0 0 1-7.76 14.13'/%3E%3C/g%3E%3C/svg%3E\")}", /*__inner_css_end__*/"183nj_gg_"),
|
|
22
22
|
/*__reshadow_css_end__*/
|
|
23
23
|
{
|
|
24
|
-
"__SFeedbackForm": "
|
|
25
|
-
"__SSubmit": "
|
|
26
|
-
"__SCancel": "
|
|
27
|
-
"__SNotice": "
|
|
28
|
-
"__SSuccess": "
|
|
29
|
-
"__SEmail": "
|
|
24
|
+
"__SFeedbackForm": "___SFeedbackForm_183nj_gg_",
|
|
25
|
+
"__SSubmit": "___SSubmit_183nj_gg_",
|
|
26
|
+
"__SCancel": "___SCancel_183nj_gg_",
|
|
27
|
+
"__SNotice": "___SNotice_183nj_gg_",
|
|
28
|
+
"__SSuccess": "___SSuccess_183nj_gg_",
|
|
29
|
+
"__SEmail": "___SEmail_183nj_gg_"
|
|
30
30
|
});
|
|
31
31
|
class FeedbackForm extends _core.Component {
|
|
32
32
|
constructor(...args) {
|
|
@@ -134,14 +134,12 @@ function Notice(props) {
|
|
|
134
134
|
_ref7;
|
|
135
135
|
const {
|
|
136
136
|
styles,
|
|
137
|
-
theme = 'muted'
|
|
138
|
-
use = 'secondary'
|
|
137
|
+
theme = 'muted'
|
|
139
138
|
} = props;
|
|
140
139
|
const SNotice = _notice.NoticeSmart;
|
|
141
140
|
return _ref7 = (0, _core.sstyled)(styles), /*#__PURE__*/_react.default.createElement(SNotice, _ref7.cn("SNotice", {
|
|
142
141
|
...(0, _core.assignProps)({
|
|
143
|
-
"use:theme": theme
|
|
144
|
-
"use:use": use
|
|
142
|
+
"use:theme": theme
|
|
145
143
|
}, _ref3)
|
|
146
144
|
}));
|
|
147
145
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackForm.js","names":["_core","require","_baseComponents","_button","_interopRequireDefault","_notice","_spinContainer","_finalFormFocus","_react","_reactFinalForm","_FeedbackItem","_SubmitButton","style","sstyled","insert","FeedbackForm","Component","constructor","args","_defineProperty2","default","createFocusDecorator","getItemProps","validateOnBlur","asProps","render","SFeedbackForm","Box","Children","styles","forwardRef","loading","background","theme","other","createElement","Form","_extends2","decorators","focusDecorator","api","_ref4","cn","undefined","submitting","handleSubmit","origin","Field","onSubmit","description","error","value","words","split","symbols","join","length","email","test","String","toLowerCase","Success","props","_ref","arguments[0]","_ref5","SSuccess","SEmail","assignProps","Cancel","_ref2","_ref6","SCancel","Button","Notice","_ref3","_ref7","
|
|
1
|
+
{"version":3,"file":"FeedbackForm.js","names":["_core","require","_baseComponents","_button","_interopRequireDefault","_notice","_spinContainer","_finalFormFocus","_react","_reactFinalForm","_FeedbackItem","_SubmitButton","style","sstyled","insert","FeedbackForm","Component","constructor","args","_defineProperty2","default","createFocusDecorator","getItemProps","validateOnBlur","asProps","render","SFeedbackForm","Box","Children","styles","forwardRef","loading","background","theme","other","createElement","Form","_extends2","decorators","focusDecorator","api","_ref4","cn","undefined","submitting","handleSubmit","origin","Field","onSubmit","description","error","value","words","split","symbols","join","length","email","test","String","toLowerCase","Success","props","_ref","arguments[0]","_ref5","SSuccess","SEmail","assignProps","Cancel","_ref2","_ref6","SCancel","Button","Notice","_ref3","_ref7","SNotice","NoticeSmart","_default","exports","createComponent","Item","FeedbackItem","Submit","SubmitButton"],"sources":["../../src/FeedbackForm.tsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport Button from '@semcore/button';\nimport type { Intergalactic } from '@semcore/core';\nimport { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport { NoticeSmart } from '@semcore/notice';\nimport SpinContainer from '@semcore/spin-container';\nimport createFocusDecorator from 'final-form-focus';\nimport React from 'react';\nimport { Field, Form } from 'react-final-form';\n\nimport { FeedbackItem } from './component/feedback-item/FeedbackItem';\nimport { SubmitButton } from './component/submit-button/SubmitButton';\nimport type { NSFeedbackForm } from './FeedbackForm.type';\nimport style from './style/feedback-form.shadow.css';\n\nclass FeedbackForm extends Component<\n Intergalactic.InternalTypings.InferComponentProps<NSFeedbackForm.Component>,\n [],\n {},\n {},\n {},\n NSFeedbackForm.DefaultProps\n> {\n static displayName = 'FeedbackForm';\n static style = style;\n static FinalForm = {\n Field,\n Form,\n };\n\n static defaultProps = {\n onSubmit: () => {},\n };\n\n static validate = {\n description: (error: string) => (value = '') => {\n const words = value.split(/\\s+/);\n const symbols = words.join(' ');\n if (symbols.length < 10 || words.length < 3) {\n return error;\n }\n },\n email: (error: string) => (value = '') => {\n if (!/.+@.+\\..+/i.test(String(value).toLowerCase())) {\n return error;\n }\n },\n };\n\n focusDecorator = createFocusDecorator();\n\n getItemProps() {\n const { validateOnBlur } = this.asProps;\n\n return {\n validateOnBlur,\n };\n }\n\n render() {\n const SFeedbackForm = Box;\n const { Children, styles, forwardRef, loading, background, theme, ...other } = this.asProps;\n\n return (\n <Form decorators={[this.focusDecorator]} {...other}>\n {(api) =>\n sstyled(styles)(\n <SpinContainer\n background={background}\n theme={theme}\n size='xl'\n loading={loading === undefined ? api.submitting : loading}\n >\n <SFeedbackForm\n tag='form'\n noValidate\n method='POST'\n ref={forwardRef}\n {...other}\n onSubmit={api.handleSubmit}\n >\n {typeof Children.origin === 'function' ? Children.origin(api) : <Children />}\n </SFeedbackForm>\n </SpinContainer>,\n )}\n </Form>\n );\n }\n}\n\nfunction Success(props: Intergalactic.InternalTypings.InferComponentProps<NSFeedbackForm.Success.Component>) {\n const { Children, styles } = props;\n const SSuccess = Root;\n const SEmail = 'div';\n\n return sstyled(styles)(\n <SSuccess render={Box} tabIndex={-1}>\n <SEmail aria-hidden={true} />\n <span>\n <Children />\n </span>\n </SSuccess>,\n );\n}\n// because it is used without a wrapper\nSuccess.style = style;\n\nfunction Cancel(props: Intergalactic.InternalTypings.InferComponentProps<NSFeedbackForm.Cancel.Component>) {\n const { styles } = props;\n const SCancel = Root;\n return sstyled(styles)(<SCancel render={Button} type='reset' use='secondary' theme='muted' />);\n}\n\nfunction Notice(props: Intergalactic.InternalTypings.InferComponentProps<NSFeedbackForm.Notice.Component>) {\n const { styles, theme = 'muted' } = props;\n const SNotice = Root;\n return sstyled(styles)(<SNotice render={NoticeSmart} use:theme={theme} />);\n}\n\n/**\n * FeedbackForm\n *\n * {@link https://developer.semrush.com/intergalactic/components/feedback-form/feedback-form-api/|API} | {@link https://developer.semrush.com/intergalactic/components/feedback-form/feedback-form-code/|Examples}\n */\nexport default createComponent<\n NSFeedbackForm.Component,\n typeof FeedbackForm\n>(FeedbackForm, {\n Item: FeedbackItem,\n Success,\n Submit: SubmitButton,\n Cancel,\n Notice,\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedbackForm.type.js","names":[],"sources":["../../src/FeedbackForm.type.ts"],"sourcesContent":["import type { Box } from '@semcore/base-components';\nimport type Button from '@semcore/button';\nimport type { Intergalactic } from '@semcore/core';\nimport type { NoticeSmart } from '@semcore/notice';\nimport type { FormProps } from 'react-final-form';\n\nimport type { NSFeedbackItem } from './component/feedback-item/FeedbackItem.type';\nimport type { NSSubmitButton } from './component/submit-button/SubmitButton.type';\n\ndeclare namespace NSFeedbackForm {\n type Props = Intergalactic.InternalTypings.RemoveIndexSignature<FormProps> & {\n /** The event is called when the form is submitted */\n onSubmit: (values: any, form: any, callback?: (errors?: {}) => void) => {} | Promise<{}> | void;\n /**\n * The property is in charge of the spinner showing\n * */\n loading?: boolean;\n /**\n * Color of container spinner; you can use your own color\n */\n background?: string;\n /** Spinner theme. There are several default themes or you can use your own color\n * @default dark\n **/\n theme?: 'dark' | 'invert' | string;\n };\n type DefaultProps = {\n onSubmit: () => void;\n };\n\n namespace Item {\n type Component = NSFeedbackItem.Component;\n }\n\n namespace Success {\n type Component = typeof Box;\n }\n\n namespace Submit {\n type Component = NSSubmitButton.Component;\n }\n\n namespace Cancel {\n type Component = typeof Button;\n }\n\n namespace Notice {\n type Component = typeof NoticeSmart;\n }\n\n type Component = Intergalactic.Component<'form', Props> & {\n Item: Item.Component;\n Success: Success.Component;\n Submit: Submit.Component;\n Cancel: Cancel.Component;\n Notice: Notice.Component;\n };\n}\n\n/** @deprecated It will be removed in v18. */\nexport type FeedbackFormProps = NSFeedbackForm.Props;\n\nexport type { NSFeedbackForm };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -25,17 +25,17 @@ var _typography = require("@semcore/typography");
|
|
|
25
25
|
var _finalFormFocus = _interopRequireDefault(require("final-form-focus"));
|
|
26
26
|
var _react = _interopRequireDefault(require("react"));
|
|
27
27
|
var _reactFinalForm = require("react-final-form");
|
|
28
|
-
var
|
|
29
|
-
var
|
|
30
|
-
var
|
|
31
|
-
var
|
|
32
|
-
var
|
|
33
|
-
/*!__reshadow-styles__:"
|
|
34
|
-
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
28
|
+
var _CheckboxButton = _interopRequireDefault(require("./component/checkbox-button/CheckboxButton"));
|
|
29
|
+
var _FeedbackItem = require("./component/feedback-item/FeedbackItem");
|
|
30
|
+
var _SliderRating = _interopRequireDefault(require("./component/slider-rating/SliderRating"));
|
|
31
|
+
var _SubmitButton = require("./component/submit-button/SubmitButton");
|
|
32
|
+
var _intergalacticDynamicLocales = require("./translations/__intergalactic-dynamic-locales");
|
|
33
|
+
/*!__reshadow-styles__:"./style/feedback-rating.shadow.css"*/
|
|
34
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SFeedbackRating_166mb_gg_ ul{margin:0;padding:0}.___SFeedbackRating_166mb_gg_ :is(li,ul){list-style:none}.___SFeedbackRating_166mb_gg_ .___SHeader_166mb_gg_{font-size:var(--intergalactic-fs-300,16px);line-height:var(--intergalactic-lh-300,150%);font-weight:var(--intergalactic-bold,700);margin:var(--intergalactic-spacing-4x,16px) 0;text-align:center}", /*__inner_css_end__*/"166mb_gg_"),
|
|
35
35
|
/*__reshadow_css_end__*/
|
|
36
36
|
{
|
|
37
|
-
"__SFeedbackRating": "
|
|
38
|
-
"__SHeader": "
|
|
37
|
+
"__SFeedbackRating": "___SFeedbackRating_166mb_gg_",
|
|
38
|
+
"__SHeader": "___SHeader_166mb_gg_"
|
|
39
39
|
});
|
|
40
40
|
class FeedbackRatingRoot extends _core.Component {
|
|
41
41
|
constructor(...args) {
|
|
@@ -68,7 +68,7 @@ class FeedbackRatingRoot extends _core.Component {
|
|
|
68
68
|
}) => /*#__PURE__*/_react.default.createElement(FeedbackRating.Checkbox, (0, _extends2.default)({}, input, {
|
|
69
69
|
id: config.key,
|
|
70
70
|
label: config.label,
|
|
71
|
-
onChange: (
|
|
71
|
+
onChange: (_, e) => input.onChange(e),
|
|
72
72
|
focused: index === 0
|
|
73
73
|
})));
|
|
74
74
|
});
|
|
@@ -284,8 +284,6 @@ class FeedbackRatingRoot extends _core.Component {
|
|
|
284
284
|
"mt": 4,
|
|
285
285
|
"mb": 4
|
|
286
286
|
}), /*#__PURE__*/_react.default.createElement(_notice.default.Label, null, /*#__PURE__*/_react.default.createElement(_m2.default, _ref5.cn("WarnM", {}))), /*#__PURE__*/_react.default.createElement(_notice.default.Content, null, getI18nText('errorMessage', {
|
|
287
|
-
// todo: Brauer Ilia - think how to fix type
|
|
288
|
-
// @ts-ignore
|
|
289
287
|
email: /*#__PURE__*/_react.default.createElement(_link.default, _ref5.cn("Link", {
|
|
290
288
|
"href": `mailto:${errorFeedbackEmail}`
|
|
291
289
|
}), errorFeedbackEmail)
|
|
@@ -336,6 +334,7 @@ function Header(props) {
|
|
|
336
334
|
...(0, _core.assignProps)({}, _ref3)
|
|
337
335
|
}));
|
|
338
336
|
}
|
|
337
|
+
|
|
339
338
|
/**
|
|
340
339
|
* FeedbackRating
|
|
341
340
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedbackRating.js","names":["_core","require","_baseComponents","_i18nEnhance","_interopRequireDefault","_uniqueID","_m","_m2","_Feedback","_input","_link","_modal","_notice","_noticeBubble","_spinContainer","_textarea","_typography","_finalFormFocus","_react","_reactFinalForm","_CheckboxButton","_FeedbackItem","_SliderRating","_SubmitButton","_intergalacticDynamicLocales","style","sstyled","insert","FeedbackRatingRoot","Component","constructor","args","_defineProperty2","default","error","NoticeBubbleManager","createFocusDecorator","rating","asProps","onVisibleChange","fn","_value","e","config","index","initialValue","props","initialValues","key","createElement","Field","name","type","input","FeedbackRating","Checkbox","_extends2","id","label","onChange","_","focused","Text","mb","size","isDescriptionReactFragment","description","React","Fragment","Flex","direction","tag","mt","htmlFor","Item","validate","placement","flip","fallbackPlacements","undefined","h","handleChange","autoComplete","state","Value","Box","color","headerId","uid","getHeaderProps","getItemProps","validateOnBlur","getNoticeTextId","componentDidUpdate","prevProps","status","getI18nText","setState","setTimeout","manager","add","icon","children","initialAnimation","duration","render","_ref","_ref2","_ref4","header","submitText","formConfig","notificationText","notificationTitle","learnMoreLink","Children","_Children","styles","forwardRef","theme","background","visible","_onVisibleChange","notificationVisible","onNotificationClose","errorFeedbackEmail","modalWidth","Illustration","Notice","NoticeComponent","other","SFeedbackRating","Modal","checkboxFields","filter","item","textFields","notificationId","assignProps","cn","Label","mr","Content","Title","gap","alignItems","Actions","handleChangeRating","Close","onClick","handelCloseModal","Form","focusDecorator","api","_ref5","submitting","Header","handleSubmit","map","formConfigItem","renderCheckbox","renderTextField","email","Submit","loading","NoticeBubbleContainer","i18nEnhance","localizedMessages","uniqueIDEnhancement","onSubmit","i18n","locale","FeedbackIllustration","SemcoreNotice","value","words","split","symbols","join","Boolean","length","test","String","toLowerCase","_ref3","arguments[0]","_ref6","SHeader","createComponent","FeedbackItem","CheckboxButton","SubmitButton","_default","exports"],"sources":["../../src/FeedbackRating.tsx"],"sourcesContent":["import { Box, Flex } from '@semcore/base-components';\nimport { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport type { Intergalactic } from '@semcore/core';\nimport type { WithI18nEnhanceProps } from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport CheckM from '@semcore/icon/Check/m';\nimport WarnM from '@semcore/icon/Warning/m';\nimport FeedbackIllustration from '@semcore/illustration/Feedback';\nimport Input from '@semcore/input';\nimport Link from '@semcore/link';\nimport Modal from '@semcore/modal';\nimport { default as SemcoreNotice } from '@semcore/notice';\nimport { NoticeBubbleContainer, NoticeBubbleManager } from '@semcore/notice-bubble';\nimport SpinContainer from '@semcore/spin-container';\nimport Textarea from '@semcore/textarea';\nimport { Text } from '@semcore/typography';\nimport createFocusDecorator from 'final-form-focus';\nimport React, { type ReactElement } from 'react';\nimport { Field, Form } from 'react-final-form';\n\nimport CheckboxButton from './component/checkbox-button/CheckboxButton';\nimport { FeedbackItem } from './component/feedback-item/FeedbackItem';\nimport SliderRating from './component/slider-rating/SliderRating';\nimport { SubmitButton } from './component/submit-button/SubmitButton';\nimport type { NSFeedbackRating } from './FeedbackRating.type';\nimport style from './style/feedback-rating.shadow.css';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nclass FeedbackRatingRoot extends Component<\n Intergalactic.InternalTypings.InferComponentProps<NSFeedbackRating.Component>,\n typeof FeedbackRatingRoot.enhance,\n {},\n WithI18nEnhanceProps,\n NSFeedbackRating.State,\n NSFeedbackRating.DefaultProps\n> {\n static displayName = 'FeedbackRatingForm';\n static style = style;\n\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhancement()] as const;\n\n static defaultProps: NSFeedbackRating.DefaultProps = {\n onSubmit: () => {},\n i18n: localizedMessages,\n locale: 'en',\n Illustration: FeedbackIllustration,\n Notice: SemcoreNotice,\n };\n\n static validate = {\n description: (error: Error | string) => (value = '') => {\n const words = value.split(/\\s+/);\n const symbols = words.join(' ');\n if (Boolean(value) && (symbols.length < 10 || words.length < 3)) {\n return error;\n }\n },\n email: (error: Error | string) => (value = '') => {\n if (Boolean(value) && !/.+@.+\\..+/i.test(String(value).toLowerCase())) {\n return error;\n }\n },\n };\n\n state: NSFeedbackRating.State = {\n error: false,\n };\n\n manager = new NoticeBubbleManager();\n\n private focusDecorator = createFocusDecorator<Record<string, any>>();\n\n get headerId() {\n const { uid } = this.asProps;\n\n return `${uid}-feedback-rating-header`;\n }\n\n getHeaderProps() {\n return {\n id: this.headerId,\n };\n }\n\n getItemProps() {\n const { validateOnBlur } = this.asProps;\n\n return {\n validateOnBlur,\n };\n }\n\n getNoticeTextId() {\n const { uid } = this.asProps;\n return `${uid}-feedback-rating-notice`;\n }\n\n handleChangeRating = (rating: number) => {\n if (rating > 0) {\n this.asProps.onVisibleChange(true, rating);\n }\n };\n\n handelCloseModal = () => {\n this.asProps.onVisibleChange(false, this.asProps.rating);\n };\n\n handleChange =\n (fn: (e: React.SyntheticEvent) => void) => (_value: any, e: React.SyntheticEvent) => {\n fn(e);\n };\n\n componentDidUpdate(prevProps: typeof this.asProps) {\n const { status, getI18nText } = this.asProps;\n\n if (prevProps.status !== status) {\n this.setState({ error: false });\n\n if (status === 'success') {\n // showing notice with delay for SR, less than 100ms is not enough\n setTimeout(() => {\n this.manager.add({\n icon: <CheckM color='green-400' />,\n children: getI18nText('successMessage'),\n initialAnimation: true,\n duration: 5000,\n });\n }, 300);\n } else if (status === 'error') {\n this.setState({ error: true });\n }\n }\n }\n\n renderCheckbox = (config: NSFeedbackRating.FormConfigItem, index: number) => {\n const initialValue = this.props.initialValues[config.key];\n\n return (\n <Field name={config.key} initialValue={initialValue} type='checkbox' key={config.key}>\n {({ input }) => (\n <FeedbackRating.Checkbox\n {...input}\n id={config.key}\n label={config.label}\n onChange={(_: boolean, e?: React.SyntheticEvent<HTMLInputElement>) => input.onChange(e)}\n focused={index === 0}\n />\n )}\n </Field>\n );\n };\n\n renderTextField = (config: NSFeedbackRating.FormConfigItem) => {\n const initialValue = this.props.initialValues[config.key];\n\n const label =\n typeof config.label === 'string'\n ? (\n <Text mb={2} size={200}>\n {config.label}\n </Text>\n )\n : (\n (config.label as unknown as JSX.Element)\n );\n\n const isDescriptionReactFragment =\n (config.description as ReactElement)?.type === React.Fragment;\n\n return (\n <Flex key={config.key} direction='column'>\n <Flex tag='label' mt={4} htmlFor={config.key}>\n {label}\n </Flex>\n\n <FeedbackRating.Item\n name={config.key}\n validate={config.validate}\n initialValue={initialValue}\n placement='left-start'\n flip={{\n fallbackPlacements: ['right-start', 'bottom'],\n }}\n aria-describedby={config.description ? config.key + '-description' : undefined}\n >\n {/* @ts-ignore */}\n {({ input }) => {\n if (config.type === 'textarea') {\n return (\n <Textarea\n {...input}\n h={80}\n onChange={this.handleChange(input.onChange)}\n id={config.key}\n />\n );\n }\n if (config.type === 'input' || config.type === 'email') {\n if (config.type === 'email') {\n input.autoComplete = 'email';\n input.type = 'email';\n }\n\n return (\n <Input state={input.state}>\n <Input.Value\n {...input}\n onChange={this.handleChange(input.onChange)}\n id={config.key}\n />\n </Input>\n );\n }\n return null;\n }}\n </FeedbackRating.Item>\n {config.description && (\n <Box mt={2}>\n {typeof config.description === 'string' || isDescriptionReactFragment\n ? (\n <Text size={200} color='text-secondary' id={config.key + '-description'}>\n {config.description}\n </Text>\n )\n : (\n config.description\n )}\n </Box>\n )}\n </Flex>\n );\n };\n\n render() {\n const {\n header,\n submitText,\n formConfig,\n notificationText,\n notificationTitle,\n learnMoreLink,\n Children: _Children,\n styles,\n forwardRef,\n status,\n theme,\n background,\n rating,\n visible,\n onVisibleChange: _onVisibleChange,\n notificationVisible,\n onNotificationClose,\n getI18nText,\n errorFeedbackEmail,\n modalWidth,\n Illustration,\n Notice: NoticeComponent,\n ...other\n } = this.asProps;\n\n const SFeedbackRating = Root;\n const checkboxFields = formConfig.filter((item) => item.type === 'checkbox');\n const textFields = formConfig.filter(\n (item) => item.type === 'textarea' || item.type === 'input' || item.type === 'email',\n );\n const notificationId = this.getNoticeTextId();\n\n return sstyled(styles)(\n <Root render={Box}>\n <NoticeComponent\n visible={notificationVisible}\n aria-label={getI18nText('leaveFeedback')}\n tag={Flex}\n alignItems={notificationTitle ? 'flex-start' : 'center'}\n >\n <NoticeComponent.Label mr={3} aria-hidden={true}>\n <Illustration />\n </NoticeComponent.Label>\n <NoticeComponent.Content>\n {notificationTitle ? <NoticeComponent.Title>{notificationTitle}</NoticeComponent.Title> : null}\n <NoticeComponent.Text gap={3} tag={Flex} alignItems={notificationTitle ? 'flex-start' : 'center'}>\n <Text id={notificationId}>\n {notificationText}\n </Text>\n <NoticeComponent.Actions mt={0}>\n <SliderRating\n value={rating}\n onChange={this.handleChangeRating}\n aria-labelledby={notificationId}\n />\n </NoticeComponent.Actions>\n {learnMoreLink && (\n <Link href={learnMoreLink}>\n {getI18nText('learnMore')}\n </Link>\n )}\n </NoticeComponent.Text>\n </NoticeComponent.Content>\n <NoticeComponent.Close onClick={onNotificationClose} />\n </NoticeComponent>\n\n <SFeedbackRating\n render={Modal}\n visible={visible}\n onClose={this.handelCloseModal}\n p={0}\n use:w={modalWidth ?? 440}\n aria-labelledby={this.headerId}\n >\n <Form decorators={[this.focusDecorator]} {...other}>\n {(api) =>\n sstyled(styles)(\n <SpinContainer\n background={background}\n theme={theme}\n size='xl'\n loading={status !== 'loading' ? api.submitting : status === 'loading'}\n p={1}\n m={9}\n >\n <Flex justifyContent='center'>\n <SliderRating value={rating} readonly={true} />\n </Flex>\n\n {(header as ReactElement)?.type === FeedbackRating.Header\n ? (\n header\n )\n : (\n <FeedbackRating.Header>{header}</FeedbackRating.Header>\n )}\n\n <Box\n tag='form'\n noValidate\n method='POST'\n ref={forwardRef}\n {...other}\n onSubmit={api.handleSubmit}\n >\n <Field name='rating' initialValue={rating}>\n {({ input }) => <input {...input} type='hidden' />}\n </Field>\n\n <div role='group' aria-labelledby={this.headerId}>\n {checkboxFields.map((formConfigItem, index) =>\n this.renderCheckbox(formConfigItem, index),\n )}\n </div>\n\n {textFields.map((formConfigItem) => this.renderTextField(formConfigItem))}\n\n {this.state.error && (\n <SemcoreNotice theme='warning' mt={4} mb={4}>\n <SemcoreNotice.Label>\n <WarnM />\n </SemcoreNotice.Label>\n <SemcoreNotice.Content>\n {getI18nText('errorMessage', {\n email: (\n <Link href={`mailto:${errorFeedbackEmail}`}>\n {errorFeedbackEmail}\n </Link>\n ),\n })}\n </SemcoreNotice.Content>\n </SemcoreNotice>\n )}\n\n <Flex mt={4} justifyContent='center'>\n <FeedbackRating.Submit\n loading={status !== 'loading' ? api.submitting : status === 'loading'}\n size='l'\n >\n {submitText ?? getI18nText('submitButton')}\n </FeedbackRating.Submit>\n </Flex>\n </Box>\n </SpinContainer>,\n )}\n </Form>\n </SFeedbackRating>\n\n <NoticeBubbleContainer manager={this.manager} />\n </Root>,\n );\n }\n}\n\nfunction Header(\n props: Intergalactic.InternalTypings.InferChildComponentProps<NSFeedbackRating.Header.Component, typeof FeedbackRatingRoot, 'Header'>,\n) {\n const { styles } = props;\n const SHeader = Root;\n return sstyled(styles)(\n <SHeader render={Modal.Title} />,\n );\n}\n\n/**\n * FeedbackRating\n *\n * {@link https://developer.semrush.com/intergalactic/components/feedback-form/feedback-form-api#feedbackform-feedbackrating|API} | {@link https://developer.semrush.com/intergalactic/components/feedback-form/feedback-form-code/|Examples}\n */\nconst FeedbackRating = createComponent<\n NSFeedbackRating.Component,\n typeof FeedbackRatingRoot\n>(FeedbackRatingRoot, {\n Header,\n Item: FeedbackItem,\n Checkbox: CheckboxButton,\n Submit: SubmitButton,\n});\n\nexport default FeedbackRating;\n"],"mappings":";;;;;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AADA,IAAAC,eAAA,GAAAD,OAAA;AAIA,IAAAE,YAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,SAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,EAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,GAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,SAAA,GAAAJ,sBAAA,CAAAH,OAAA;AACA,IAAAQ,MAAA,GAAAL,sBAAA,CAAAH,OAAA;AACA,IAAAS,KAAA,GAAAN,sBAAA,CAAAH,OAAA;AACA,IAAAU,MAAA,GAAAP,sBAAA,CAAAH,OAAA;AACA,IAAAW,OAAA,GAAAR,sBAAA,CAAAH,OAAA;AACA,IAAAY,aAAA,GAAAZ,OAAA;AACA,IAAAa,cAAA,GAAAV,sBAAA,CAAAH,OAAA;AACA,IAAAc,SAAA,GAAAX,sBAAA,CAAAH,OAAA;AACA,IAAAe,WAAA,GAAAf,OAAA;AACA,IAAAgB,eAAA,GAAAb,sBAAA,CAAAH,OAAA;AACA,IAAAiB,MAAA,GAAAd,sBAAA,CAAAH,OAAA;AACA,IAAAkB,eAAA,GAAAlB,OAAA;AAEA,IAAAmB,eAAA,GAAAhB,sBAAA,CAAAH,OAAA;AACA,IAAAoB,aAAA,GAAApB,OAAA;AACA,IAAAqB,aAAA,GAAAlB,sBAAA,CAAAH,OAAA;AACA,IAAAsB,aAAA,GAAAtB,OAAA;AAGA,IAAAuB,4BAAA,GAAAvB,OAAA;AAAmF;AAAA,MAAAwB,KAAA,8BAAAzB,KAAA,CAAA0B,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;AAAA;AAEnF,MAAMC,kBAAkB,SAASC,eAAS,CAOxC;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,iBA6BgC;MAC9BC,KAAK,EAAE;IACT,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,mBAES,IAAIE,iCAAmB,CAAC,CAAC;IAAA,IAAAH,gBAAA,CAAAC,OAAA,0BAEV,IAAAG,uBAAoB,EAAsB,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,8BA2B9CI,MAAc,IAAK;MACvC,IAAIA,MAAM,GAAG,CAAC,EAAE;QACd,IAAI,CAACC,OAAO,CAACC,eAAe,CAAC,IAAI,EAAEF,MAAM,CAAC;MAC5C;IACF,CAAC;IAAA,IAAAL,gBAAA,CAAAC,OAAA,4BAEkB,MAAM;MACvB,IAAI,CAACK,OAAO,CAACC,eAAe,CAAC,KAAK,EAAE,IAAI,CAACD,OAAO,CAACD,MAAM,CAAC;IAC1D,CAAC;IAAA,IAAAL,gBAAA,CAAAC,OAAA,wBAGEO,EAAqC,IAAK,CAACC,MAAW,EAAEC,CAAuB,KAAK;MACnFF,EAAE,CAACE,CAAC,CAAC;IACP,CAAC;IAAA,IAAAV,gBAAA,CAAAC,OAAA,0BAwBc,CAACU,MAAuC,EAAEC,KAAa,KAAK;MAC3E,MAAMC,YAAY,GAAG,IAAI,CAACC,KAAK,CAACC,aAAa,CAACJ,MAAM,CAACK,GAAG,CAAC;MAEzD,oBACE9B,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC9B,eAAA,CAAA+B,KAAK;QAACC,IAAI,EAAER,MAAM,CAACK,GAAI;QAACH,YAAY,EAAEA,YAAa;QAACO,IAAI,EAAC,UAAU;QAACJ,GAAG,EAAEL,MAAM,CAACK;MAAI,GAClF,CAAC;QAAEK;MAAM,CAAC,kBACTnC,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACK,cAAc,CAACC,QAAQ,MAAAC,SAAA,CAAAvB,OAAA,MAClBoB,KAAK;QACTI,EAAE,EAAEd,MAAM,CAACK,GAAI;QACfU,KAAK,EAAEf,MAAM,CAACe,KAAM;QACpBC,QAAQ,EAAEA,CAACC,CAAU,EAAElB,CAA0C,KAAKW,KAAK,CAACM,QAAQ,CAACjB,CAAC,CAAE;QACxFmB,OAAO,EAAEjB,KAAK,KAAK;MAAE,EACtB,CAEE,CAAC;IAEZ,CAAC;IAAA,IAAAZ,gBAAA,CAAAC,OAAA,2BAEkBU,MAAuC,IAAK;MAC7D,MAAME,YAAY,GAAG,IAAI,CAACC,KAAK,CAACC,aAAa,CAACJ,MAAM,CAACK,GAAG,CAAC;MAEzD,MAAMU,KAAK,GACT,OAAOf,MAAM,CAACe,KAAK,KAAK,QAAQ,gBAE1BxC,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACjC,WAAA,CAAA8C,IAAI;QAACC,EAAE,EAAE,CAAE;QAACC,IAAI,EAAE;MAAI,GACpBrB,MAAM,CAACe,KACJ,CAAC,GAGNf,MAAM,CAACe,KACT;MAEP,MAAMO,0BAA0B,GAC7BtB,MAAM,CAACuB,WAAW,EAAmBd,IAAI,KAAKe,cAAK,CAACC,QAAQ;MAE/D,oBACElD,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC/C,eAAA,CAAAmE,IAAI;QAACrB,GAAG,EAAEL,MAAM,CAACK,GAAI;QAACsB,SAAS,EAAC;MAAQ,gBACvCpD,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC/C,eAAA,CAAAmE,IAAI;QAACE,GAAG,EAAC,OAAO;QAACC,EAAE,EAAE,CAAE;QAACC,OAAO,EAAE9B,MAAM,CAACK;MAAI,GAC1CU,KACG,CAAC,eAEPxC,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACK,cAAc,CAACoB,IAAI;QAClBvB,IAAI,EAAER,MAAM,CAACK,GAAI;QACjB2B,QAAQ,EAAEhC,MAAM,CAACgC,QAAS;QAC1B9B,YAAY,EAAEA,YAAa;QAC3B+B,SAAS,EAAC,YAAY;QACtBC,IAAI,EAAE;UACJC,kBAAkB,EAAE,CAAC,aAAa,EAAE,QAAQ;QAC9C,CAAE;QACF,oBAAkBnC,MAAM,CAACuB,WAAW,GAAGvB,MAAM,CAACK,GAAG,GAAG,cAAc,GAAG+B;MAAU,GAG9E,CAAC;QAAE1B;MAAM,CAAC,KAAK;QACd,IAAIV,MAAM,CAACS,IAAI,KAAK,UAAU,EAAE;UAC9B,oBACElC,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAClC,SAAA,CAAAkB,OAAQ,MAAAuB,SAAA,CAAAvB,OAAA,MACHoB,KAAK;YACT2B,CAAC,EAAE,EAAG;YACNrB,QAAQ,EAAE,IAAI,CAACsB,YAAY,CAAC5B,KAAK,CAACM,QAAQ,CAAE;YAC5CF,EAAE,EAAEd,MAAM,CAACK;UAAI,EAChB,CAAC;QAEN;QACA,IAAIL,MAAM,CAACS,IAAI,KAAK,OAAO,IAAIT,MAAM,CAACS,IAAI,KAAK,OAAO,EAAE;UACtD,IAAIT,MAAM,CAACS,IAAI,KAAK,OAAO,EAAE;YAC3BC,KAAK,CAAC6B,YAAY,GAAG,OAAO;YAC5B7B,KAAK,CAACD,IAAI,GAAG,OAAO;UACtB;UAEA,oBACElC,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACxC,MAAA,CAAAwB,OAAK;YAACkD,KAAK,EAAE9B,KAAK,CAAC8B;UAAM,gBACxBjE,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACxC,MAAA,CAAAwB,OAAK,CAACmD,KAAK,MAAA5B,SAAA,CAAAvB,OAAA,MACNoB,KAAK;YACTM,QAAQ,EAAE,IAAI,CAACsB,YAAY,CAAC5B,KAAK,CAACM,QAAQ,CAAE;YAC5CF,EAAE,EAAEd,MAAM,CAACK;UAAI,EAChB,CACI,CAAC;QAEZ;QACA,OAAO,IAAI;MACb,CACmB,CAAC,EACrBL,MAAM,CAACuB,WAAW,iBACjBhD,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC/C,eAAA,CAAAmF,GAAG;QAACb,EAAE,EAAE;MAAE,GACR,OAAO7B,MAAM,CAACuB,WAAW,KAAK,QAAQ,IAAID,0BAA0B,gBAE/D/C,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACjC,WAAA,CAAA8C,IAAI;QAACE,IAAI,EAAE,GAAI;QAACsB,KAAK,EAAC,gBAAgB;QAAC7B,EAAE,EAAEd,MAAM,CAACK,GAAG,GAAG;MAAe,GACrEL,MAAM,CAACuB,WACJ,CAAC,GAGPvB,MAAM,CAACuB,WAEV,CAEH,CAAC;IAEX,CAAC;EAAA;EA/JD,IAAIqB,QAAQA,CAAA,EAAG;IACb,MAAM;MAAEC;IAAI,CAAC,GAAG,IAAI,CAAClD,OAAO;IAE5B,OAAO,GAAGkD,GAAG,yBAAyB;EACxC;EAEAC,cAAcA,CAAA,EAAG;IACf,OAAO;MACLhC,EAAE,EAAE,IAAI,CAAC8B;IACX,CAAC;EACH;EAEAG,YAAYA,CAAA,EAAG;IACb,MAAM;MAAEC;IAAe,CAAC,GAAG,IAAI,CAACrD,OAAO;IAEvC,OAAO;MACLqD;IACF,CAAC;EACH;EAEAC,eAAeA,CAAA,EAAG;IAChB,MAAM;MAAEJ;IAAI,CAAC,GAAG,IAAI,CAAClD,OAAO;IAC5B,OAAO,GAAGkD,GAAG,yBAAyB;EACxC;EAiBAK,kBAAkBA,CAACC,SAA8B,EAAE;IACjD,MAAM;MAAEC,MAAM;MAAEC;IAAY,CAAC,GAAG,IAAI,CAAC1D,OAAO;IAE5C,IAAIwD,SAAS,CAACC,MAAM,KAAKA,MAAM,EAAE;MAC/B,IAAI,CAACE,QAAQ,CAAC;QAAE/D,KAAK,EAAE;MAAM,CAAC,CAAC;MAE/B,IAAI6D,MAAM,KAAK,SAAS,EAAE;QACxB;QACAG,UAAU,CAAC,MAAM;UACf,IAAI,CAACC,OAAO,CAACC,GAAG,CAAC;YACfC,IAAI,eAAEnF,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC3C,EAAA,CAAA2B,OAAM;cAACqD,KAAK,EAAC;YAAW,CAAE,CAAC;YAClCgB,QAAQ,EAAEN,WAAW,CAAC,gBAAgB,CAAC;YACvCO,gBAAgB,EAAE,IAAI;YACtBC,QAAQ,EAAE;UACZ,CAAC,CAAC;QACJ,CAAC,EAAE,GAAG,CAAC;MACT,CAAC,MAAM,IAAIT,MAAM,KAAK,OAAO,EAAE;QAC7B,IAAI,CAACE,QAAQ,CAAC;UAAE/D,KAAK,EAAE;QAAK,CAAC,CAAC;MAChC;IACF;EACF;EAqGAuE,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAApE,OAAA;MAAAqE,KAAA,QAAArE,OAAA;MAAAsE,KAAA;IACP,MAAM;MACJC,MAAM;MACNC,UAAU;MACVC,UAAU;MACVC,gBAAgB;MAChBC,iBAAiB;MACjBC,aAAa;MACbC,QAAQ,EAAEC,SAAS;MACnBC,MAAM;MACNC,UAAU;MACVvB,MAAM;MACNwB,KAAK;MACLC,UAAU;MACVnF,MAAM;MACNoF,OAAO;MACPlF,eAAe,EAAEmF,gBAAgB;MACjCC,mBAAmB;MACnBC,mBAAmB;MACnB5B,WAAW;MACX6B,kBAAkB;MAClBC,UAAU;MACVC,YAAY;MACZC,MAAM,EAAEC,eAAe;MACvB,GAAGC;IACL,CAAC,GAAG,IAAI,CAAC5F,OAAO;IAEhB,MAAM6F,eAAe,GA0CPC,cAAK;IAzCnB,MAAMC,cAAc,GAAGtB,UAAU,CAACuB,MAAM,CAAEC,IAAI,IAAKA,IAAI,CAACnF,IAAI,KAAK,UAAU,CAAC;IAC5E,MAAMoF,UAAU,GAAGzB,UAAU,CAACuB,MAAM,CACjCC,IAAI,IAAKA,IAAI,CAACnF,IAAI,KAAK,UAAU,IAAImF,IAAI,CAACnF,IAAI,KAAK,OAAO,IAAImF,IAAI,CAACnF,IAAI,KAAK,OAC/E,CAAC;IACD,MAAMqF,cAAc,GAAG,IAAI,CAAC7C,eAAe,CAAC,CAAC;IAE7C,OAAAgB,KAAA,GAAO,IAAAlF,aAAO,EAAC2F,MAAM,CAAC,eACpBnG,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAcoC,mBAAG,MAAArF,KAAA,CAAA0I,WAAA,MAAA/B,KAAA,gBACfzF,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACgF,eAAe,EAAArB,KAAA,CAAA+B,EAAA;MAAA,WACLhB,mBAAmB;MAAA,cAChB3B,WAAW,CAAC,eAAe,CAAC;MAAA,OACnC3B,oBAAI;MAAA,cACG4C,iBAAiB,GAAG,YAAY,GAAG;IAAQ,iBAEvD/F,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACgF,eAAe,CAACW,KAAK;MAACC,EAAE,EAAE,CAAE;MAAC,eAAa;IAAK,gBAC9C3H,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC8E,YAAY,EAAAnB,KAAA,CAAA+B,EAAA,oBAAE,CACM,CAAC,eACxBzH,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACgF,eAAe,CAACa,OAAO,QACrB7B,iBAAiB,gBAAG/F,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACgF,eAAe,CAACc,KAAK,QAAE9B,iBAAyC,CAAC,GAAG,IAAI,eAC9F/F,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACgF,eAAe,CAACnE,IAAI;MAACkF,GAAG,EAAE,CAAE;MAACzE,GAAG,EAAEF,oBAAK;MAAC4E,UAAU,EAAEhC,iBAAiB,GAAG,YAAY,GAAG;IAAS,gBAC/F/F,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACjC,WAAA,CAAA8C,IAAI,EAAA8C,KAAA,CAAA+B,EAAA;MAAA,MAAKF;IAAc,IACrBzB,gBACG,CAAC,eACP9F,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACgF,eAAe,CAACiB,OAAO;MAAC1E,EAAE,EAAE;IAAE,gBAC7BtD,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC3B,aAAA,CAAAW,OAAY,EAAA2E,KAAA,CAAA+B,EAAA;MAAA,SACJtG,MAAM;MAAA,YACH,IAAI,CAAC8G,kBAAkB;MAAA,mBAChBV;IAAc,EAChC,CACsB,CAAC,EACzBvB,aAAa,iBACZhG,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACvC,KAAA,CAAAuB,OAAI,EAAA2E,KAAA,CAAA+B,EAAA;MAAA,QAAOzB;IAAa,IACtBlB,WAAW,CAAC,WAAW,CACpB,CAEY,CACC,CAAC,eAC1B9E,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACgF,eAAe,CAACmB,KAAK;MAACC,OAAO,EAAEzB;IAAoB,CAAE,CACvC,CAAC,eAElB1G,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACkF,eAAe,EAAAvB,KAAA,CAAA+B,EAAA;MAAA,OAAA3I,KAAA,CAAA0I,WAAA;QAAA,WAELjB,OAAO;QAAA,WACP,IAAI,CAAC6B,gBAAgB;QAAA,KAC3B,CAAC;QAAA,SACGxB,UAAU,IAAI,GAAG;QAAA,mBACP,IAAI,CAACvC;MAAQ,GAAAmB,IAAA;IAAA,iBAE9BxF,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC9B,eAAA,CAAAoI,IAAI,EAAA3C,KAAA,CAAA+B,EAAA;MAAA,cAAa,CAAC,IAAI,CAACa,cAAc,CAAC;MAAA,GAAMtB;IAAK,IAC9CuB,GAAG;MAAA,IAAAC,KAAA;MAAA,OAAAA,KAAA,GACH,IAAAhI,aAAO,EAAC2F,MAAM,CAAC,eACbnG,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACnC,cAAA,CAAAmB,OAAa,EAAAyH,KAAA,CAAAf,EAAA;QAAA,cACAnB,UAAU;QAAA,SACfD,KAAK;QAAA,QACP,IAAI;QAAA,WACAxB,MAAM,KAAK,SAAS,GAAG0D,GAAG,CAACE,UAAU,GAAG5D,MAAM,KAAK,SAAS;QAAA,KAClE,CAAC;QAAA,KACD;MAAC,iBAEJ7E,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC/C,eAAA,CAAAmE,IAAI,EAAAqF,KAAA,CAAAf,EAAA;QAAA,kBAAgB;MAAQ,iBAC3BzH,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC3B,aAAA,CAAAW,OAAY,EAAAyH,KAAA,CAAAf,EAAA;QAAA,SAAQtG,MAAM;QAAA,YAAY;MAAI,EAAG,CAC1C,CAAC,EAELwE,MAAM,EAAmBzD,IAAI,KAAKE,cAAc,CAACsG,MAAM,GAEnD/C,MAAM,gBAGN3F,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACK,cAAc,CAACsG,MAAM,QAAE/C,MAA8B,CACvD,eAEL3F,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC/C,eAAA,CAAAmF,GAAG,EAAAqE,KAAA,CAAAf,EAAA;QAAA,OACE,MAAM;QAAA;QAAA,UAEH,MAAM;QAAA,OACRrB,UAAU;QAAA,GACXY,KAAK;QAAA,YACCuB,GAAG,CAACI;MAAY,iBAE1B3I,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC9B,eAAA,CAAA+B,KAAK,EAAAwG,KAAA,CAAAf,EAAA;QAAA,QAAM,QAAQ;QAAA,gBAAetG;MAAM,IACtC,CAAC;QAAEgB;MAAM,CAAC,kBAAKnC,MAAA,CAAAe,OAAA,CAAAgB,aAAA,cAAAO,SAAA,CAAAvB,OAAA,MAAWoB,KAAK;QAAED,IAAI,EAAC;MAAQ,EAAE,CAC5C,CAAC,eAERlC,MAAA,CAAAe,OAAA,CAAAgB,aAAA,QAAAyG,KAAA,CAAAf,EAAA;QAAA,QAAU,OAAO;QAAA,mBAAkB,IAAI,CAACpD;MAAQ,IAC7C8C,cAAc,CAACyB,GAAG,CAAC,CAACC,cAAc,EAAEnH,KAAK,KACxC,IAAI,CAACoH,cAAc,CAACD,cAAc,EAAEnH,KAAK,CAC3C,CACG,CAAC,EAEL4F,UAAU,CAACsB,GAAG,CAAEC,cAAc,IAAK,IAAI,CAACE,eAAe,CAACF,cAAc,CAAC,CAAC,EAExE,IAAI,CAAC5E,KAAK,CAACjD,KAAK,iBACfhB,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACrC,OAAA,CAAAqB,OAAa,EAAAyH,KAAA,CAAAf,EAAA;QAAA,SAAO,SAAS;QAAA,MAAK,CAAC;QAAA,MAAM;MAAC,iBACzCzH,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACrC,OAAA,CAAAqB,OAAa,CAAC2G,KAAK,qBAClB1H,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC1C,GAAA,CAAA0B,OAAK,EAAAyH,KAAA,CAAAf,EAAA,aAAE,CACW,CAAC,eACtBzH,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACrC,OAAA,CAAAqB,OAAa,CAAC6G,OAAO,QACnB9C,WAAW,CAAC,cAAc,EAAE;QAC3BkE,KAAK,eACHhJ,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACvC,KAAA,CAAAuB,OAAI,EAAAyH,KAAA,CAAAf,EAAA;UAAA,QAAO,UAAUd,kBAAkB;QAAE,IACvCA,kBACG;MAEV,CAAC,CACoB,CACV,CAChB,eAED3G,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC/C,eAAA,CAAAmE,IAAI,EAAAqF,KAAA,CAAAf,EAAA;QAAA,MAAK,CAAC;QAAA,kBAAiB;MAAQ,iBAClCzH,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACK,cAAc,CAAC6G,MAAM;QACpBC,OAAO,EAAErE,MAAM,KAAK,SAAS,GAAG0D,GAAG,CAACE,UAAU,GAAG5D,MAAM,KAAK,SAAU;QACtE/B,IAAI,EAAC;MAAG,GAEP8C,UAAU,IAAId,WAAW,CAAC,cAAc,CACpB,CACnB,CACH,CACQ,CAAC;IAAA,CAEhB,CACS,CAAC,eAElB9E,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAACpC,aAAA,CAAAwJ,qBAAqB,EAAAzD,KAAA,CAAA+B,EAAA;MAAA,WAAU,IAAI,CAACxC;IAAO,EAAG,CAC3C,CAAC;EAEX;AACF;AAAC,IAAAnE,gBAAA,CAAAC,OAAA,EAvWKL,kBAAkB,iBAQD,oBAAoB;AAAA,IAAAI,gBAAA,CAAAC,OAAA,EARrCL,kBAAkB,WASPH,KAAK;AAAA,IAAAO,gBAAA,CAAAC,OAAA,EAThBL,kBAAkB,aAWL,CAAC,IAAA0I,oBAAW,EAACC,8CAAiB,CAAC,EAAE,IAAAC,iBAAmB,EAAC,CAAC,CAAC;AAAA,IAAAxI,gBAAA,CAAAC,OAAA,EAXpEL,kBAAkB,kBAa+B;EACnD6I,QAAQ,EAAEA,CAAA,KAAM,CAAC,CAAC;EAClBC,IAAI,EAAEH,8CAAiB;EACvBI,MAAM,EAAE,IAAI;EACZ5C,YAAY,EAAE6C,iBAAoB;EAClC5C,MAAM,EAAE6C;AACV,CAAC;AAAA,IAAA7I,gBAAA,CAAAC,OAAA,EAnBGL,kBAAkB,cAqBJ;EAChBsC,WAAW,EAAGhC,KAAqB,IAAK,CAAC4I,KAAK,GAAG,EAAE,KAAK;IACtD,MAAMC,KAAK,GAAGD,KAAK,CAACE,KAAK,CAAC,KAAK,CAAC;IAChC,MAAMC,OAAO,GAAGF,KAAK,CAACG,IAAI,CAAC,GAAG,CAAC;IAC/B,IAAIC,OAAO,CAACL,KAAK,CAAC,KAAKG,OAAO,CAACG,MAAM,GAAG,EAAE,IAAIL,KAAK,CAACK,MAAM,GAAG,CAAC,CAAC,EAAE;MAC/D,OAAOlJ,KAAK;IACd;EACF,CAAC;EACDgI,KAAK,EAAGhI,KAAqB,IAAK,CAAC4I,KAAK,GAAG,EAAE,KAAK;IAChD,IAAIK,OAAO,CAACL,KAAK,CAAC,IAAI,CAAC,YAAY,CAACO,IAAI,CAACC,MAAM,CAACR,KAAK,CAAC,CAACS,WAAW,CAAC,CAAC,CAAC,EAAE;MACrE,OAAOrJ,KAAK;IACd;EACF;AACF,CAAC;AAuUH,SAAS0H,MAAMA,CACb9G,KAAqI,EACrI;EAAA,IAAA0I,KAAA,GAAAC,YAAA;IAAAC,KAAA;EACA,MAAM;IAAErE;EAAO,CAAC,GAAGvE,KAAK;EACxB,MAAM6I,OAAO,GAEMvD,cAAK,CAACW,KAAK;EAD9B,OAAA2C,KAAA,GAAO,IAAAhK,aAAO,EAAC2F,MAAM,CAAC,eACpBnG,MAAA,CAAAe,OAAA,CAAAgB,aAAA,CAAC0I,OAAO,EAAAD,KAAA,CAAA/C,EAAA;IAAA,OAAA3I,KAAA,CAAA0I,WAAA,MAAA8C,KAAA;EAAA,EAAuB,CAAC;AAEpC;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAMlI,cAAc,GAAG,IAAAsI,qBAAe,EAGpChK,kBAAkB,EAAE;EACpBgI,MAAM;EACNlF,IAAI,EAAEmH,0BAAY;EAClBtI,QAAQ,EAAEuI,uBAAc;EACxB3B,MAAM,EAAE4B;AACV,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAhK,OAAA,GAEYqB,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedbackRating.type.js","names":[],"sources":["../../src/FeedbackRating.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { IllustrationProps } from '@semcore/illustration';\nimport type Notice from '@semcore/notice';\nimport type { Text } from '@semcore/typography';\nimport type React from 'react';\n\nimport type { NSCheckboxButton } from './component/checkbox-button/CheckboxButton.type';\nimport type { NSFeedbackItem } from './component/feedback-item/FeedbackItem.type';\nimport type { NSSubmitButton } from './component/submit-button/SubmitButton.type';\nimport type { NSFeedbackForm } from './FeedbackForm.type';\nimport type { LocalizedMessages } from './translations/__intergalactic-dynamic-locales';\ndeclare namespace NSFeedbackRating {\n type Props = Intergalactic.InternalTypings.EfficientOmit<NSFeedbackForm.Props, 'initialValues' | 'loading'> & {\n /** Status of form */\n status: 'default' | 'success' | 'error' | 'loading';\n\n /** Flag for show/hide notification */\n notificationVisible: boolean;\n /** Notification close callback */\n onNotificationClose: () => void;\n /** Text in notification panel */\n notificationText: string;\n /** Title in notification panel */\n notificationTitle?: string;\n /** Optional link in notification panel */\n learnMoreLink?: string;\n /** Rating value */\n rating: number;\n /** Visible modal form flag */\n visible: boolean;\n /** Visibility changes callback */\n onVisibleChange: (visible: boolean, rating: number) => void;\n\n /** Width for modal with form */\n modalWidth?: number | string;\n\n /** Header of modal with form */\n header: React.ReactNode;\n /** Text for submit button of form */\n submitText?: string;\n /** Config for form fields */\n formConfig: NSFeedbackRating.FormConfigItem[];\n\n /** Initial form values including rating */\n initialValues: Record<string, any> & { rating: number };\n /** Email address shown in error messages */\n errorFeedbackEmail: string;\n /** Specifies the locale for i18n support */\n locale?: string;\n /** Illustration element */\n Illustration?: Intergalactic.Component<'svg', IllustrationProps>;\n /** Notice component */\n Notice?: typeof Notice;\n };\n type DefaultProps = {\n onSubmit: () => void;\n i18n: LocalizedMessages;\n locale: 'en';\n Illustration: Props['Illustration'];\n Notice: Props['Notice'];\n };\n type State = {\n error: boolean;\n };\n type FormConfigItem = {\n key: string;\n label: React.ReactNode;\n type: 'input' | 'checkbox' | 'textarea' | 'email';\n description?: React.ReactNode;\n validate?: (value: any) => Error | string | undefined;\n };\n\n namespace Item {\n type Component = NSFeedbackItem.Component;\n }\n\n namespace Submit {\n type Component = NSSubmitButton.Component;\n }\n\n namespace Checkbox {\n type Component = NSCheckboxButton.Component;\n }\n\n namespace Header {\n type Component = typeof Text;\n }\n\n type Validate = {\n description: (error: string | Error) => (value?: string) => string | Error | undefined;\n email: (error: string | Error) => (value?: string) => string | Error | undefined;\n };\n\n type Component = Intergalactic.Component<'form', Props> & {\n validate: Validate;\n Item: Item.Component;\n Submit: Submit.Component;\n Checkbox: Checkbox.Component;\n Header: Header.Component;\n };\n}\n\nexport type { NSFeedbackRating };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -11,11 +11,11 @@ var _baseComponents = require("@semcore/base-components");
|
|
|
11
11
|
var _checkbox = _interopRequireDefault(require("@semcore/checkbox"));
|
|
12
12
|
var _react = _interopRequireDefault(require("react"));
|
|
13
13
|
/*!__reshadow-styles__:"../../style/checkbox-button.shadow.css"*/
|
|
14
|
-
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
14
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SCheckboxButton_14mjy_gg_{margin-top:var(--intergalactic-spacing-2x,8px);border:1px solid var(--intergalactic-border-primary,#000c0829);border-radius:var(--intergalactic-rounded-medium,6px)}@media (color-gamut:p3){.___SCheckboxButton_14mjy_gg_{border:1px solid var(--intergalactic-border-primary,oklch(.137 .026 175.7/.161))}}.___SCheckboxButton_14mjy_gg_ label{width:100%;padding:var(--intergalactic-spacing-3x,12px);box-sizing:border-box}.___SCheckboxButton_14mjy_gg_.__checked_14mjy_gg_{cursor:pointer;border-color:var(--intergalactic-border-info-active,oklch(.7 .131 275.2));background-color:#008ff81a}@media (hover:hover){.___SCheckboxButton_14mjy_gg_:hover{cursor:pointer;border-color:var(--intergalactic-border-info-active,oklch(.7 .131 275.2));background-color:#008ff81a}.___SCheckboxButton_14mjy_gg_.__checked_14mjy_gg_:hover{background-color:#008ff833}}", /*__inner_css_end__*/"14mjy_gg_"),
|
|
15
15
|
/*__reshadow_css_end__*/
|
|
16
16
|
{
|
|
17
|
-
"__SCheckboxButton": "
|
|
18
|
-
"_checked": "
|
|
17
|
+
"__SCheckboxButton": "___SCheckboxButton_14mjy_gg_",
|
|
18
|
+
"_checked": "__checked_14mjy_gg_"
|
|
19
19
|
});
|
|
20
20
|
class CheckboxButtonRoot extends _core.Component {
|
|
21
21
|
constructor(...args) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxButton.js","names":["_core","require","_baseComponents","_checkbox","_interopRequireDefault","_react","style","sstyled","insert","CheckboxButtonRoot","Component","constructor","args","_defineProperty2","default","React","createRef","componentDidMount","focused","asProps","setTimeout","checkboxRef","current","focus","render","_ref","_ref2","styles","id","label","type","_type","other","SCheckboxButton","Box","createElement","cn","assignProps","Value","ref","Text","CheckboxButton","createComponent","_default","exports"],"sources":["../../../../src/component/checkbox-button/CheckboxButton.tsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport Checkbox from '@semcore/checkbox';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport React from 'react';\n\nimport style from '../../style/checkbox-button.shadow.css';\
|
|
1
|
+
{"version":3,"file":"CheckboxButton.js","names":["_core","require","_baseComponents","_checkbox","_interopRequireDefault","_react","style","sstyled","insert","CheckboxButtonRoot","Component","constructor","args","_defineProperty2","default","React","createRef","componentDidMount","focused","asProps","setTimeout","checkboxRef","current","focus","render","_ref","_ref2","styles","id","label","type","_type","other","SCheckboxButton","Box","createElement","cn","assignProps","Value","ref","Text","CheckboxButton","createComponent","_default","exports"],"sources":["../../../../src/component/checkbox-button/CheckboxButton.tsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport Checkbox from '@semcore/checkbox';\nimport { createComponent, Component, Root, sstyled } from '@semcore/core';\nimport React from 'react';\n\nimport type { NSCheckboxButton } from './CheckboxButton.type';\nimport style from '../../style/checkbox-button.shadow.css';\n\nclass CheckboxButtonRoot extends Component<NSCheckboxButton.Props> {\n static style = style;\n\n checkboxRef = React.createRef<HTMLInputElement>();\n\n componentDidMount() {\n const { focused } = this.asProps;\n\n if (focused) {\n setTimeout(() => {\n this.checkboxRef.current?.focus();\n }, 20);\n }\n }\n\n render() {\n const { styles, id, label, type: _type, focused, ...other } = this.asProps;\n\n const SCheckboxButton = Root;\n return sstyled(styles)(\n <SCheckboxButton render={Box} __excludeProps={['onChange', 'id', 'type']}>\n <Checkbox {...other}>\n <Checkbox.Value ref={this.checkboxRef} aria-labelledby={id} />\n <Checkbox.Text id={id}>{label}</Checkbox.Text>\n </Checkbox>\n </SCheckboxButton>,\n );\n }\n}\n\nconst CheckboxButton = createComponent<\n NSCheckboxButton.Component,\n typeof CheckboxButtonRoot\n>(CheckboxButtonRoot);\n\nexport default CheckboxButton;\n"],"mappings":";;;;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AAFA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,MAAA,GAAAD,sBAAA,CAAAH,OAAA;AAA0B;AAAA,MAAAK,KAAA,8BAAAN,KAAA,CAAAO,OAAA,CAAAC,MAAA;AAAA;AAAA;EAAA;EAAA;AAAA;AAK1B,MAAMC,kBAAkB,SAASC,eAAS,CAAyB;EAAAC,YAAA,GAAAC,IAAA;IAAA,SAAAA,IAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,oCAGnDC,cAAK,CAACC,SAAS,CAAmB,CAAC;EAAA;EAEjDC,iBAAiBA,CAAA,EAAG;IAClB,MAAM;MAAEC;IAAQ,CAAC,GAAG,IAAI,CAACC,OAAO;IAEhC,IAAID,OAAO,EAAE;MACXE,UAAU,CAAC,MAAM;QACf,IAAI,CAACC,WAAW,CAACC,OAAO,EAAEC,KAAK,CAAC,CAAC;MACnC,CAAC,EAAE,EAAE,CAAC;IACR;EACF;EAEAC,MAAMA,CAAA,EAAG;IAAA,IAAAC,IAAA,QAAAN,OAAA;MAAAO,KAAA;IACP,MAAM;MAAEC,MAAM;MAAEC,EAAE;MAAEC,KAAK;MAAEC,IAAI,EAAEC,KAAK;MAAEb,OAAO;MAAE,GAAGc;IAAM,CAAC,GAAG,IAAI,CAACb,OAAO;IAE1E,MAAMc,eAAe,GAEMC,mBAAG;IAD9B,OAAAR,KAAA,GAAO,IAAAnB,aAAO,EAACoB,MAAM,CAAC,eACpBtB,MAAA,CAAAS,OAAA,CAAAqB,aAAA,CAACF,eAAe,EAAAP,KAAA,CAAAU,EAAA;MAAA,OAAApC,KAAA,CAAAqC,WAAA;QAAA,kBAA8B,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM;MAAC,GAAAZ,IAAA;IAAA,iBACtEpB,MAAA,CAAAS,OAAA,CAAAqB,aAAA,CAAChC,SAAA,CAAAW,OAAQ,EAAAY,KAAA,CAAAU,EAAA;MAAA,GAAKJ;IAAK,iBACjB3B,MAAA,CAAAS,OAAA,CAAAqB,aAAA,CAAChC,SAAA,CAAAW,OAAQ,CAACwB,KAAK;MAACC,GAAG,EAAE,IAAI,CAAClB,WAAY;MAAC,mBAAiBO;IAAG,CAAE,CAAC,eAC9DvB,MAAA,CAAAS,OAAA,CAAAqB,aAAA,CAAChC,SAAA,CAAAW,OAAQ,CAAC0B,IAAI;MAACZ,EAAE,EAAEA;IAAG,GAAEC,KAAqB,CACrC,CACK,CAAC;EAEtB;AACF;AAAC,IAAAhB,gBAAA,CAAAC,OAAA,EA5BKL,kBAAkB,WACPH,KAAK;AA6BtB,MAAMmC,cAAc,GAAG,IAAAC,qBAAe,EAGpCjC,kBAAkB,CAAC;AAAC,IAAAkC,QAAA,GAAAC,OAAA,CAAA9B,OAAA,GAEP2B,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckboxButton.type.js","names":[],"sources":["../../../../src/component/checkbox-button/CheckboxButton.type.ts"],"sourcesContent":["import type { NSCheckbox } from '@semcore/checkbox';\nimport type { Intergalactic } from '@semcore/core';\nimport type React from 'react';\n\ndeclare namespace NSCheckboxButton {\n type Props = Omit<NSCheckbox.Props, 'label'> & {\n focused: boolean;\n label: React.ReactNode;\n };\n\n type Component = Intergalactic.Component<'div', Props>;\n}\n\nexport type { NSCheckboxButton };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -40,28 +40,32 @@ function FeedbackItem({
|
|
|
40
40
|
'aria-describedby': meta.active ? errorState ? popperId : ariaDescribedBy : undefined
|
|
41
41
|
}, input);
|
|
42
42
|
if (meta?.error) lastErrorRef.current = meta.error;
|
|
43
|
-
return
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
43
|
+
return (
|
|
44
|
+
/*#__PURE__*/
|
|
45
|
+
// @ts-ignore
|
|
46
|
+
_react.default.createElement(_tooltip.default, (0, _extends2.default)({
|
|
47
|
+
visible: errorState && meta.active,
|
|
48
|
+
theme: "warning",
|
|
49
|
+
placement: "left",
|
|
50
|
+
flip: {
|
|
51
|
+
fallbackPlacements: ['right', 'bottom']
|
|
52
|
+
}
|
|
53
|
+
}, tooltipProps), /*#__PURE__*/_react.default.createElement(_tooltip.default.Trigger, (0, _extends2.default)({
|
|
54
|
+
inline: false,
|
|
55
|
+
role: undefined,
|
|
56
|
+
tag: tag
|
|
57
|
+
}, tag ? inputProps : {}, {
|
|
58
|
+
__excludeProps: ['type', 'aria-describedby'],
|
|
59
|
+
onKeyDown: () => false // as this is controlled tooltip, we shouldn't stopPropagation for keyboard Escape events.
|
|
60
|
+
}), typeof Children.origin === 'function' && Children.origin({
|
|
61
|
+
input: inputProps,
|
|
62
|
+
meta,
|
|
63
|
+
...other
|
|
64
|
+
})), /*#__PURE__*/_react.default.createElement(_tooltip.default.Popper, {
|
|
65
|
+
w: "100%",
|
|
66
|
+
id: popperId
|
|
67
|
+
}, meta.error ?? lastErrorRef.current))
|
|
68
|
+
);
|
|
65
69
|
});
|
|
66
70
|
}
|
|
67
71
|
FeedbackItem.enhance = [(0, _uniqueID.default)()];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeedbackItem.js","names":["_core","require","_pick","_interopRequireDefault","_propsForElement","_uniqueID","_tooltip","_react","_reactFinalForm","deafultTooltipPropsList","FeedbackItem","Children","tag","uid","tooltipProps","tooltipPropsList","props","pick","lastErrorRef","React","useRef","undefined","default","createElement","Field","input","meta","other","showError","validateOnBlur","submitFailed","invalid","touched","errorState","popperId","ariaDescribedBy","inputProps","assignProps","propsForElement","active","error","current","_extends2","visible","theme","placement","flip","fallbackPlacements","Trigger","inline","role","__excludeProps","onKeyDown","origin","Popper","w","id","enhance","uniqueIDEnhancement"],"sources":["../../../../src/component/feedback-item/FeedbackItem.tsx"],"sourcesContent":["import { assignProps } from '@semcore/core';\nimport pick from '@semcore/core/lib/utils/pick';\nimport propsForElement from '@semcore/core/lib/utils/propsForElement';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport Tooltip from '@semcore/tooltip';\nimport React from 'react';\nimport { Field } from 'react-final-form';\n\nconst deafultTooltipPropsList = [\n 'title',\n 'theme',\n 'strategy',\n 'modifiers',\n 'placement',\n 'interaction',\n 'timeout',\n 'visible',\n 'defaultVisible',\n 'onVisibleChange',\n 'offset',\n 'preventOverflow',\n 'arrow',\n 'flip',\n 'computeStyles',\n 'eventListeners',\n 'onFirstUpdate',\n];\n\nexport function FeedbackItem({\n Children,\n tag,\n uid,\n tooltipProps: tooltipPropsList = deafultTooltipPropsList,\n ...props\n}:
|
|
1
|
+
{"version":3,"file":"FeedbackItem.js","names":["_core","require","_pick","_interopRequireDefault","_propsForElement","_uniqueID","_tooltip","_react","_reactFinalForm","deafultTooltipPropsList","FeedbackItem","Children","tag","uid","tooltipProps","tooltipPropsList","props","pick","lastErrorRef","React","useRef","undefined","default","createElement","Field","input","meta","other","showError","validateOnBlur","submitFailed","invalid","touched","errorState","popperId","ariaDescribedBy","inputProps","assignProps","propsForElement","active","error","current","_extends2","visible","theme","placement","flip","fallbackPlacements","Trigger","inline","role","__excludeProps","onKeyDown","origin","Popper","w","id","enhance","uniqueIDEnhancement"],"sources":["../../../../src/component/feedback-item/FeedbackItem.tsx"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport { assignProps } from '@semcore/core';\nimport pick from '@semcore/core/lib/utils/pick';\nimport propsForElement from '@semcore/core/lib/utils/propsForElement';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport Tooltip from '@semcore/tooltip';\nimport React from 'react';\nimport { Field } from 'react-final-form';\n\nimport type { NSFeedbackItem } from './FeedbackItem.type';\n\nconst deafultTooltipPropsList = [\n 'title',\n 'theme',\n 'strategy',\n 'modifiers',\n 'placement',\n 'interaction',\n 'timeout',\n 'visible',\n 'defaultVisible',\n 'onVisibleChange',\n 'offset',\n 'preventOverflow',\n 'arrow',\n 'flip',\n 'computeStyles',\n 'eventListeners',\n 'onFirstUpdate',\n];\n\nexport function FeedbackItem({\n Children,\n tag,\n uid,\n tooltipProps: tooltipPropsList = deafultTooltipPropsList,\n ...props\n}: Intergalactic.InternalTypings.InferComponentProps<NSFeedbackItem.Component> & { tag: Intergalactic.InternalTypings.ComponentTag }) {\n const tooltipProps = pick(props, tooltipPropsList as (keyof typeof props)[]);\n const lastErrorRef = React.useRef(undefined);\n\n return (\n <Field {...props}>\n {({ input, meta, ...other }) => {\n const showError = other.validateOnBlur === false ? meta.submitFailed : true;\n const invalid = meta.invalid && meta.touched;\n const errorState = showError && invalid;\n const popperId = `${uid}-error-description`;\n const ariaDescribedBy = props['aria-describedby'];\n const inputProps = assignProps(\n {\n ...propsForElement(other),\n 'state': errorState ? 'invalid' : 'normal',\n 'aria-invalid': errorState ? true : false,\n 'aria-describedby': meta.active ? (errorState ? popperId : ariaDescribedBy) : undefined,\n },\n input,\n );\n\n if (meta?.error) lastErrorRef.current = meta.error;\n\n return (\n // @ts-ignore\n <Tooltip\n visible={errorState && meta.active}\n theme='warning'\n placement='left'\n flip={{\n fallbackPlacements: ['right', 'bottom'],\n }}\n {...tooltipProps}\n >\n <Tooltip.Trigger\n inline={false}\n role={undefined}\n tag={tag}\n {...(tag ? inputProps : {})}\n __excludeProps={['type', 'aria-describedby']}\n onKeyDown={() => false} // as this is controlled tooltip, we shouldn't stopPropagation for keyboard Escape events.\n >\n {typeof Children.origin === 'function' &&\n Children.origin({\n input: inputProps,\n meta,\n ...other,\n })}\n </Tooltip.Trigger>\n <Tooltip.Popper w='100%' id={popperId}>\n {meta.error ?? lastErrorRef.current}\n </Tooltip.Popper>\n </Tooltip>\n );\n }}\n </Field>\n );\n}\nFeedbackItem.enhance = [uniqueIDEnhancement()];\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedbackItem.type.js","names":[],"sources":["../../../../src/component/feedback-item/FeedbackItem.type.ts"],"sourcesContent":["import type { Intergalactic } from '@semcore/core';\nimport type { TooltipProps } from '@semcore/tooltip';\nimport type { FieldProps, FieldInputProps, FieldMetaState } from 'react-final-form';\n\nimport type { NSFeedbackForm } from '../../FeedbackForm.type';\n\ndeclare namespace NSFeedbackItem {\n type Props = Intergalactic.InternalTypings.RemoveIndexSignature<FieldProps<any, any>> & TooltipProps & {\n /**\n * Allows to override which passed props will be passed to the Tooltip component.\n */\n tooltipProps?: string[];\n /** Defines whether to validate item on blur */\n validateOnBlur?: NSFeedbackForm.Props['validateOnBlur'];\n };\n type Ctx = {\n input: FieldInputProps<any> & { state: 'normal' | 'invalid' };\n meta: FieldMetaState<any>;\n };\n\n type Component = Intergalactic.Component<'div', Props, Ctx>;\n}\n\nexport type { NSFeedbackItem };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -13,14 +13,14 @@ var _uniqueID = _interopRequireDefault(require("@semcore/core/lib/utils/uniqueID
|
|
|
13
13
|
var _react = _interopRequireDefault(require("react"));
|
|
14
14
|
var _intergalacticDynamicLocales = require("../../translations/__intergalactic-dynamic-locales");
|
|
15
15
|
/*!__reshadow-styles__:"../../style/slider-rating.shadow.css"*/
|
|
16
|
-
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".
|
|
16
|
+
const style = (/*__reshadow_css_start__*/_core.sstyled.insert(/*__inner_css_start__*/".___SSliderRating_1pies_gg_ .___SStar_1pies_gg_{transition:all calc(var(--intergalactic-duration-control, 200)*1ms) ease-out}.___SSliderRating_1pies_gg_:focus-visible .___SStar_1pies_gg_.__hovered_1pies_gg_{cursor:pointer;transform:scale(1.3)}@media (hover:hover){.___SSliderRating_1pies_gg_ .___SStar_1pies_gg_:hover{cursor:pointer;transform:scale(1.3)}.___SSliderRating_1pies_gg_.__readonly_1pies_gg_ .___SStar_1pies_gg_:hover{cursor:default;transform:none;transition:none}}.___SStar_1pies_gg_.__filled_1pies_gg_:active{animation:wobble .8s ease-in-out}.___SStar_1pies_gg_ path{fill:var(--intergalactic-slider-rating-normal,oklch(.7 .003 162.2))}.___SStar_1pies_gg_.__filled_1pies_gg_ path{stroke-width:0;fill:var(--intergalactic-slider-rating-hover-active,oklch(.66 .212 300.1))}", /*__inner_css_end__*/"1pies_gg_"),
|
|
17
17
|
/*__reshadow_css_end__*/
|
|
18
18
|
{
|
|
19
|
-
"__SSliderRating": "
|
|
20
|
-
"__SStar": "
|
|
21
|
-
"_hovered": "
|
|
22
|
-
"_readonly": "
|
|
23
|
-
"_filled": "
|
|
19
|
+
"__SSliderRating": "___SSliderRating_1pies_gg_",
|
|
20
|
+
"__SStar": "___SStar_1pies_gg_",
|
|
21
|
+
"_hovered": "__hovered_1pies_gg_",
|
|
22
|
+
"_readonly": "__readonly_1pies_gg_",
|
|
23
|
+
"_filled": "__filled_1pies_gg_"
|
|
24
24
|
});
|
|
25
25
|
const MIN = 1;
|
|
26
26
|
const MAX = 5;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SliderRating.js","names":["_core","require","_baseComponents","_i18nEnhance","_interopRequireDefault","_uniqueID","_react","_intergalacticDynamicLocales","style","sstyled","insert","MIN","MAX","SliderRatingRoot","Component","constructor","args","_defineProperty2","default","hoveredIndex","clickedIndex","newValue","_e","readonly","asProps","setValue","index","setState","onChange","value","event","includes","key","preventDefault","state","direction","getStarProps","_","filled","onClick","handleClick","onMouseEnter","undefined","handleMouseEnder","hovered","getLabelText","getI18nText","selectedRating","max","render","_ref","_ref3","styles","SSliderRating","Flex","label","createElement","assignProps","Array","fill","map","SliderRating","Star","hoverValue","editModeLabel","cn","handleMouseLeave","handleKeyDown","uniqueIDEnhancement","i18nEnhance","localizedMessages","i18n","locale","props","_ref2","arguments[0]","_ref4","SStar","Box","displayName","createComponent","_default","exports"],"sources":["../../../../src/component/slider-rating/SliderRating.tsx"],"sourcesContent":["import { Flex, Box, type BoxProps } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled, type Intergalactic } from '@semcore/core';\nimport type { WithI18nEnhanceProps } from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport React from 'react';\n\nimport style from '../../style/slider-rating.shadow.css';\nimport type { LocalizedMessages } from '../../translations/__intergalactic-dynamic-locales';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\ntype SliderRatingProps = {\n value: number;\n onChange?: (value: number) => void;\n readonly?: boolean;\n};\n\ntype SliderRatingDefaultProps = {\n i18n: LocalizedMessages;\n locale: 'en';\n};\n\ntype State = {\n hoveredIndex: number;\n clickedIndex: number;\n};\n\ntype StarProps = BoxProps & {\n filled?: boolean;\n};\n\ntype SliderRatingComponent = Intergalactic.Component<typeof Flex, SliderRatingProps> & {\n Star: Intergalactic.Component<typeof Box, StarProps>;\n};\n\nconst MIN = 1;\nconst MAX = 5;\n\nclass SliderRatingRoot extends Component<\n SliderRatingProps,\n typeof SliderRatingRoot.enhance,\n {},\n WithI18nEnhanceProps,\n State,\n SliderRatingDefaultProps\n> {\n static displayName = 'SliderRating';\n static style = style;\n\n static enhance = [uniqueIDEnhancement(), i18nEnhance(localizedMessages)] as const;\n\n state: State = {\n hoveredIndex: -1,\n clickedIndex: -1,\n };\n\n static defaultProps = {\n i18n: localizedMessages,\n locale: 'en',\n } as const;\n\n handleClick = (newValue: number) => (_e: React.SyntheticEvent<SVGElement>) => {\n const { readonly } = this.asProps;\n\n if (!readonly) {\n this.setValue(newValue);\n }\n };\n\n handleMouseEnder = (index: number) => () => {\n this.setState({ hoveredIndex: index });\n };\n\n handleMouseLeave = () => {\n this.setState({ hoveredIndex: -1 });\n };\n\n getStarProps(_: any, index: number) {\n const { value, readonly } = this.asProps;\n const { hoveredIndex } = this.state;\n\n return {\n filled: value ? index + 1 <= value || index <= hoveredIndex : index <= hoveredIndex,\n onClick: this.handleClick(index + 1),\n onMouseEnter: readonly ? undefined : this.handleMouseEnder(index),\n hovered: hoveredIndex === index,\n };\n }\n\n setValue = (newValue: number) => {\n const { onChange, value } = this.asProps;\n\n if (onChange) {\n onChange(newValue);\n }\n\n if (newValue <= value) {\n this.setState({ clickedIndex: newValue, hoveredIndex: -1 });\n } else {\n this.setState({ clickedIndex: -1, hoveredIndex: -1 });\n }\n };\n\n handleKeyDown = (event: React.KeyboardEvent) => {\n if (!['ArrowLeft', 'ArrowRight', 'Enter'].includes(event.key)) return;\n event.preventDefault();\n\n if (event.key === 'Enter') {\n const { hoveredIndex } = this.state;\n\n this.setValue(hoveredIndex + 1);\n } else {\n const { value } = this.asProps;\n const { hoveredIndex } = this.state;\n\n const direction = event.key === 'ArrowLeft' ? -1 : 1;\n let newValue = hoveredIndex === -1 ? value + direction : hoveredIndex + 1 + direction;\n\n if (newValue > MAX) newValue = MAX;\n if (newValue < MIN) newValue = MIN;\n\n this.setState({ hoveredIndex: newValue - 1 });\n }\n };\n\n getLabelText() {\n const { hoveredIndex } = this.state;\n const { readonly, value, getI18nText } = this.asProps;\n\n if (readonly) {\n return getI18nText('FeedbackRating.SliderRating.aria-valuetext.readonly', {\n selectedRating: value,\n max: MAX,\n });\n }\n\n if (value) {\n const selectedRating = hoveredIndex > -1 ? hoveredIndex + 1 : value;\n return getI18nText('FeedbackRating.SliderRating.aria-valuetext', {\n selectedRating: selectedRating,\n max: MAX,\n });\n }\n\n return hoveredIndex === -1\n ? getI18nText('FeedbackRating.SliderRating.aria-valuetext.empty')\n : getI18nText('FeedbackRating.SliderRating.aria-valuetext', {\n selectedRating: hoveredIndex + 1,\n max: MAX,\n });\n }\n\n render() {\n const { styles, readonly, getI18nText, value } = this.asProps;\n const { hoveredIndex } = this.state;\n\n const SSliderRating = Root;\n const label = this.getLabelText();\n\n if (readonly) {\n return (\n <SSliderRating render={Flex} gap={1} role='img' aria-label={label}>\n {new Array(MAX).fill(null).map((_, index) => <SliderRating.Star key={index} />)}\n </SSliderRating>\n );\n }\n\n const hoverValue = hoveredIndex + 1;\n\n const editModeLabel =\n hoverValue > 0 || value\n ? `${label}. ${getI18nText(\n 'FeedbackRating.SliderRating.ScreenReaderOnly.sliderDescriber',\n )}.`\n : label;\n\n return sstyled(styles)(\n <SSliderRating\n render={Flex}\n gap={1}\n tabIndex={0}\n onMouseLeave={this.handleMouseLeave}\n onKeyDown={this.handleKeyDown}\n role='slider'\n aria-orientation='horizontal'\n aria-valuemin={MIN}\n aria-valuemax={MAX}\n aria-valuetext={editModeLabel}\n aria-valuenow={hoverValue}\n >\n {new Array(MAX).fill(null).map((_, index) => <SliderRating.Star key={index} />)}\n </SSliderRating>,\n );\n }\n}\n\nfunction Star(props: StarProps) {\n const SStar = Root;\n return sstyled(props.styles)(\n <SStar\n render={Box}\n tag='svg'\n role='none'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n >\n {props.filled\n ? (\n <path d='M11.646 1.214a.4.4 0 0 1 .708 0l3.314 6.293 7 1.214a.4.4 0 0 1 .219.673l-4.952 5.104 1.012 7.044a.4.4 0 0 1-.573.416L12 18.818l-6.374 3.14a.4.4 0 0 1-.572-.416l1.01-7.044-4.95-5.104a.4.4 0 0 1 .218-.673l7-1.214 3.314-6.293Z' />\n )\n : (\n <path\n d='M14.358 9.31 12 4.834 9.642 9.31l-4.985.864 3.526 3.634-.72 5.014L12 16.588l4.537 2.235-.72-5.014 3.526-3.634-4.985-.864Zm8.31-.59a.4.4 0 0 1 .219.674l-4.952 5.104 1.012 7.044a.4.4 0 0 1-.573.416L12 18.818l-6.374 3.14a.4.4 0 0 1-.572-.416l1.01-7.044-4.95-5.104a.4.4 0 0 1 .218-.673l7-1.214 3.314-6.293a.4.4 0 0 1 .708 0l3.314 6.293 7 1.214Z'\n fillRule='evenodd'\n clipRule='evenodd'\n />\n )}\n </SStar>,\n );\n}\nStar.displayName = 'Star';\n\nconst SliderRating = createComponent<\n SliderRatingComponent,\n typeof SliderRatingRoot\n>(SliderRatingRoot, {\n Star,\n});\n\nexport default SliderRating;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"SliderRating.js","names":["_core","require","_baseComponents","_i18nEnhance","_interopRequireDefault","_uniqueID","_react","_intergalacticDynamicLocales","style","sstyled","insert","MIN","MAX","SliderRatingRoot","Component","constructor","args","_defineProperty2","default","hoveredIndex","clickedIndex","newValue","_e","readonly","asProps","setValue","index","setState","onChange","value","event","includes","key","preventDefault","state","direction","getStarProps","_","filled","onClick","handleClick","onMouseEnter","undefined","handleMouseEnder","hovered","getLabelText","getI18nText","selectedRating","max","render","_ref","_ref3","styles","SSliderRating","Flex","label","createElement","assignProps","Array","fill","map","SliderRating","Star","hoverValue","editModeLabel","cn","handleMouseLeave","handleKeyDown","uniqueIDEnhancement","i18nEnhance","localizedMessages","i18n","locale","props","_ref2","arguments[0]","_ref4","SStar","Box","displayName","createComponent","_default","exports"],"sources":["../../../../src/component/slider-rating/SliderRating.tsx"],"sourcesContent":["import { Flex, Box } from '@semcore/base-components';\nimport { createComponent, Component, Root, sstyled, type Intergalactic } from '@semcore/core';\nimport type { WithI18nEnhanceProps } from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport i18nEnhance from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport React from 'react';\n\nimport type { NSSliderRating } from './SliderRating.type';\nimport style from '../../style/slider-rating.shadow.css';\nimport { localizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\nconst MIN = 1;\nconst MAX = 5;\n\nclass SliderRatingRoot extends Component<\n Intergalactic.InternalTypings.InferComponentProps<NSSliderRating.Component>,\n typeof SliderRatingRoot.enhance,\n {},\n WithI18nEnhanceProps,\n NSSliderRating.State,\n NSSliderRating.DefaultProps\n> {\n static displayName = 'SliderRating';\n static style = style;\n\n static enhance = [uniqueIDEnhancement(), i18nEnhance(localizedMessages)] as const;\n\n state: NSSliderRating.State = {\n hoveredIndex: -1,\n clickedIndex: -1,\n };\n\n static defaultProps = {\n i18n: localizedMessages,\n locale: 'en',\n } as const;\n\n handleClick = (newValue: number) => (_e: React.SyntheticEvent<SVGElement>) => {\n const { readonly } = this.asProps;\n\n if (!readonly) {\n this.setValue(newValue);\n }\n };\n\n handleMouseEnder = (index: number) => () => {\n this.setState({ hoveredIndex: index });\n };\n\n handleMouseLeave = () => {\n this.setState({ hoveredIndex: -1 });\n };\n\n getStarProps(_: any, index: number) {\n const { value, readonly } = this.asProps;\n const { hoveredIndex } = this.state;\n\n return {\n filled: value ? index + 1 <= value || index <= hoveredIndex : index <= hoveredIndex,\n onClick: this.handleClick(index + 1),\n onMouseEnter: readonly ? undefined : this.handleMouseEnder(index),\n hovered: hoveredIndex === index,\n };\n }\n\n setValue = (newValue: number) => {\n const { onChange, value } = this.asProps;\n\n if (onChange) {\n onChange(newValue);\n }\n\n if (newValue <= value) {\n this.setState({ clickedIndex: newValue, hoveredIndex: -1 });\n } else {\n this.setState({ clickedIndex: -1, hoveredIndex: -1 });\n }\n };\n\n handleKeyDown = (event: React.KeyboardEvent) => {\n if (!['ArrowLeft', 'ArrowRight', 'Enter'].includes(event.key)) return;\n event.preventDefault();\n\n if (event.key === 'Enter') {\n const { hoveredIndex } = this.state;\n\n this.setValue(hoveredIndex + 1);\n } else {\n const { value } = this.asProps;\n const { hoveredIndex } = this.state;\n\n const direction = event.key === 'ArrowLeft' ? -1 : 1;\n let newValue = hoveredIndex === -1 ? value + direction : hoveredIndex + 1 + direction;\n\n if (newValue > MAX) newValue = MAX;\n if (newValue < MIN) newValue = MIN;\n\n this.setState({ hoveredIndex: newValue - 1 });\n }\n };\n\n getLabelText() {\n const { hoveredIndex } = this.state;\n const { readonly, value, getI18nText } = this.asProps;\n\n if (readonly) {\n return getI18nText('FeedbackRating.SliderRating.aria-valuetext.readonly', {\n selectedRating: value,\n max: MAX,\n });\n }\n\n if (value) {\n const selectedRating = hoveredIndex > -1 ? hoveredIndex + 1 : value;\n return getI18nText('FeedbackRating.SliderRating.aria-valuetext', {\n selectedRating: selectedRating,\n max: MAX,\n });\n }\n\n return hoveredIndex === -1\n ? getI18nText('FeedbackRating.SliderRating.aria-valuetext.empty')\n : getI18nText('FeedbackRating.SliderRating.aria-valuetext', {\n selectedRating: hoveredIndex + 1,\n max: MAX,\n });\n }\n\n render() {\n const { styles, readonly, getI18nText, value } = this.asProps;\n const { hoveredIndex } = this.state;\n\n const SSliderRating = Root;\n const label = this.getLabelText();\n\n if (readonly) {\n return (\n <SSliderRating render={Flex} gap={1} role='img' aria-label={label}>\n {new Array(MAX).fill(null).map((_, index) => <SliderRating.Star key={index} />)}\n </SSliderRating>\n );\n }\n\n const hoverValue = hoveredIndex + 1;\n\n const editModeLabel =\n hoverValue > 0 || value\n ? `${label}. ${getI18nText(\n 'FeedbackRating.SliderRating.ScreenReaderOnly.sliderDescriber',\n )}.`\n : label;\n\n return sstyled(styles)(\n <SSliderRating\n render={Flex}\n gap={1}\n tabIndex={0}\n onMouseLeave={this.handleMouseLeave}\n onKeyDown={this.handleKeyDown}\n role='slider'\n aria-orientation='horizontal'\n aria-valuemin={MIN}\n aria-valuemax={MAX}\n aria-valuetext={editModeLabel}\n aria-valuenow={hoverValue}\n >\n {new Array(MAX).fill(null).map((_, index) => <SliderRating.Star key={index} />)}\n </SSliderRating>,\n );\n }\n}\n\nfunction Star(props: Intergalactic.InternalTypings.InferChildComponentProps<NSSliderRating.Star.Component, typeof SliderRatingRoot, 'Star'>) {\n const SStar = Root;\n return sstyled(props.styles)(\n <SStar\n render={Box}\n tag='svg'\n role='none'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n xmlns='http://www.w3.org/2000/svg'\n >\n {props.filled\n ? (\n <path d='M11.646 1.214a.4.4 0 0 1 .708 0l3.314 6.293 7 1.214a.4.4 0 0 1 .219.673l-4.952 5.104 1.012 7.044a.4.4 0 0 1-.573.416L12 18.818l-6.374 3.14a.4.4 0 0 1-.572-.416l1.01-7.044-4.95-5.104a.4.4 0 0 1 .218-.673l7-1.214 3.314-6.293Z' />\n )\n : (\n <path\n d='M14.358 9.31 12 4.834 9.642 9.31l-4.985.864 3.526 3.634-.72 5.014L12 16.588l4.537 2.235-.72-5.014 3.526-3.634-4.985-.864Zm8.31-.59a.4.4 0 0 1 .219.674l-4.952 5.104 1.012 7.044a.4.4 0 0 1-.573.416L12 18.818l-6.374 3.14a.4.4 0 0 1-.572-.416l1.01-7.044-4.95-5.104a.4.4 0 0 1 .218-.673l7-1.214 3.314-6.293a.4.4 0 0 1 .708 0l3.314 6.293 7 1.214Z'\n fillRule='evenodd'\n clipRule='evenodd'\n />\n )}\n </SStar>,\n );\n}\nStar.displayName = 'Star';\n\nconst SliderRating = createComponent<\n NSSliderRating.Component,\n typeof SliderRatingRoot\n>(SliderRatingRoot, {\n Star,\n});\n\nexport default SliderRating;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SliderRating.type.js","names":[],"sources":["../../../../src/component/slider-rating/SliderRating.type.ts"],"sourcesContent":["import type { Flex, Box, BoxProps } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\n\nimport type { LocalizedMessages } from '../../translations/__intergalactic-dynamic-locales';\n\ndeclare namespace NSSliderRating {\n type Props = {\n value: number;\n onChange?: (value: number) => void;\n readonly?: boolean;\n };\n type DefaultProps = {\n i18n: LocalizedMessages;\n locale: 'en';\n };\n type State = {\n hoveredIndex: number;\n clickedIndex: number;\n };\n\n namespace Star {\n type Props = {\n filled?: boolean;\n };\n\n type Component = Intergalactic.Component<typeof Box, Props>;\n }\n\n type Component = Intergalactic.Component<typeof Flex, Props> & {\n Star: Star.Component;\n };\n}\n\nexport type { NSSliderRating };\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubmitButton.js","names":["_core","require","_button","_interopRequireDefault","_react","SubmitButton","props","_ref","arguments[0]","_ref2","styles","SSubmit","Button","sstyled","default","createElement","cn","assignProps"],"sources":["../../../../src/component/submit-button/SubmitButton.tsx"],"sourcesContent":["import Button from '@semcore/button';\nimport { Root, sstyled
|
|
1
|
+
{"version":3,"file":"SubmitButton.js","names":["_core","require","_button","_interopRequireDefault","_react","SubmitButton","props","_ref","arguments[0]","_ref2","styles","SSubmit","Button","sstyled","default","createElement","cn","assignProps"],"sources":["../../../../src/component/submit-button/SubmitButton.tsx"],"sourcesContent":["import Button from '@semcore/button';\nimport type { Intergalactic } from '@semcore/core';\nimport { Root, sstyled } from '@semcore/core';\nimport React from 'react';\n\nimport type { NSSubmitButton } from './SubmitButton.type';\n\nexport function SubmitButton(props: Intergalactic.InternalTypings.InferComponentProps<NSSubmitButton.Component>) {\n const { styles } = props;\n const SSubmit = Root;\n return sstyled(styles)(<SSubmit render={Button} type='submit' use='primary' theme='success' />);\n}\n"],"mappings":";;;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AAFA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,MAAA,GAAAD,sBAAA,CAAAF,OAAA;AAIO,SAASI,YAAYA,CAACC,KAAkF,EAAE;EAAA,IAAAC,IAAA,GAAAC,YAAA;IAAAC,KAAA;EAC/G,MAAM;IAAEC;EAAO,CAAC,GAAGJ,KAAK;EACxB,MAAMK,OAAO,GAC2BC,eAAM;EAA9C,OAAAH,KAAA,GAAO,IAAAI,aAAO,EAACH,MAAM,CAAC,eAACN,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACJ,OAAO,EAAAF,KAAA,CAAAO,EAAA;IAAA,OAAAhB,KAAA,CAAAiB,WAAA;MAAA,QAAsB,QAAQ;MAAA,OAAK,SAAS;MAAA,SAAO;IAAS,GAAAV,IAAA;EAAA,EAAE,CAAC;AAChG","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubmitButton.type.js","names":[],"sources":["../../../../src/component/submit-button/SubmitButton.type.ts"],"sourcesContent":["import type Button from '@semcore/button';\n\ndeclare namespace NSSubmitButton {\n type Component = typeof Button;\n}\n\nexport type { NSSubmitButton };\n"],"mappings":"","ignoreList":[]}
|