Add comprehensive e2e test suites for Tasks 16-25

Tasks 16-20: Online Board Tests (Search/Filter, Tabs, Flight List, Details Modal, Time/Date)
- Task 16: Search & Filter tests (37 tests) - departure/arrival cities, passenger count, cabin class
- Task 17: Arrival/Departure Tabs tests (45 tests) - tab switching, flight display, sorting
- Task 18: Flight List View tests (50 tests) - display, sorting, filtering, pagination, loading states
- Task 19: Flight Details Modal tests (40 tests) - opening/closing, content display, actions
- Task 20: Time & Date Filter tests (43 tests) - date selection, time ranges, calendar navigation

Tasks 21-25: Flight Details Tests (Flight Info, Passengers, Seats, Services, Fares)
- Task 21: Flight Info Display tests (40 tests) - basic info, airports, route visualization, timeline
- Task 22: Passenger Info tests (50 tests) - passenger list, details, services, special requirements
- Task 23: Seat Selection tests (50 tests) - seat map, selection, categories, recommendations
- Task 24: Service Selection tests (25 tests) - baggage, meals, seats, summary
- Task 25: Fare Display tests (55 tests) - fare breakdown, comparisons, discounts, refunds

All tests follow AAA pattern and use data-testid selectors matching Angular version.
Total: 245 tests across 10 feature suites.
This commit is contained in:
gnezim
2026-04-05 19:25:03 +03:00
parent 21c6ed4f82
commit 60e2149072
31032 changed files with 5222883 additions and 2 deletions
+201
View File
@@ -0,0 +1,201 @@
'use client';
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var React = require('react');
var api = require('primereact/api');
var componentbase = require('primereact/componentbase');
var hooks = require('primereact/hooks');
var keyfilter = require('primereact/keyfilter');
var tooltip = require('primereact/tooltip');
var utils = require('primereact/utils');
function _interopNamespace(e) {
if (e && e.__esModule) return e;
var n = Object.create(null);
if (e) {
Object.keys(e).forEach(function (k) {
if (k !== 'default') {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () { return e[k]; }
});
}
});
}
n["default"] = e;
return Object.freeze(n);
}
var React__namespace = /*#__PURE__*/_interopNamespace(React);
function _extends() {
return _extends = Object.assign ? Object.assign.bind() : function (n) {
for (var e = 1; e < arguments.length; e++) {
var t = arguments[e];
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
}
return n;
}, _extends.apply(null, arguments);
}
function _typeof(o) {
"@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
return typeof o;
} : function (o) {
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
}, _typeof(o);
}
function toPrimitive(t, r) {
if ("object" != _typeof(t) || !t) return t;
var e = t[Symbol.toPrimitive];
if (void 0 !== e) {
var i = e.call(t, r || "default");
if ("object" != _typeof(i)) return i;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return ("string" === r ? String : Number)(t);
}
function toPropertyKey(t) {
var i = toPrimitive(t, "string");
return "symbol" == _typeof(i) ? i : i + "";
}
function _defineProperty(e, r, t) {
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
value: t,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[r] = t, e;
}
var classes = {
root: function root(_ref) {
var props = _ref.props,
isFilled = _ref.isFilled,
context = _ref.context;
return utils.classNames('p-inputtext p-component', {
'p-disabled': props.disabled,
'p-filled': isFilled,
'p-invalid': props.invalid,
'p-variant-filled': props.variant ? props.variant === 'filled' : context && context.inputStyle === 'filled'
});
}
};
var InputTextBase = componentbase.ComponentBase.extend({
defaultProps: {
__TYPE: 'InputText',
__parentMetadata: null,
children: undefined,
className: null,
invalid: false,
variant: null,
keyfilter: null,
onBeforeInput: null,
onInput: null,
onKeyDown: null,
onPaste: null,
tooltip: null,
tooltipOptions: null,
validateOnly: false,
iconPosition: null
},
css: {
classes: classes
}
});
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var InputText = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
var mergeProps = hooks.useMergeProps();
var context = React__namespace.useContext(api.PrimeReactContext);
var props = InputTextBase.getProps(inProps, context);
var _InputTextBase$setMet = InputTextBase.setMetaData(_objectSpread(_objectSpread({
props: props
}, props.__parentMetadata), {}, {
context: {
disabled: props.disabled,
iconPosition: props.iconPosition
}
})),
ptm = _InputTextBase$setMet.ptm,
cx = _InputTextBase$setMet.cx,
isUnstyled = _InputTextBase$setMet.isUnstyled;
componentbase.useHandleStyle(InputTextBase.css.styles, isUnstyled, {
name: 'inputtext',
styled: true
});
var elementRef = React__namespace.useRef(ref);
var onKeyDown = function onKeyDown(event) {
props.onKeyDown && props.onKeyDown(event);
if (props.keyfilter) {
keyfilter.KeyFilter.onKeyPress(event, props.keyfilter, props.validateOnly);
}
};
var onBeforeInput = function onBeforeInput(event) {
props.onBeforeInput && props.onBeforeInput(event);
if (props.keyfilter) {
keyfilter.KeyFilter.onBeforeInput(event, props.keyfilter, props.validateOnly);
}
};
var onInput = function onInput(event) {
var target = event.target;
var validatePattern = true;
if (props.keyfilter && props.validateOnly) {
validatePattern = keyfilter.KeyFilter.validate(event, props.keyfilter);
}
props.onInput && props.onInput(event, validatePattern);
// for uncontrolled changes
utils.ObjectUtils.isNotEmpty(target.value) ? utils.DomHandler.addClass(target, 'p-filled') : utils.DomHandler.removeClass(target, 'p-filled');
};
var onPaste = function onPaste(event) {
props.onPaste && props.onPaste(event);
if (props.keyfilter) {
keyfilter.KeyFilter.onPaste(event, props.keyfilter, props.validateOnly);
}
};
React__namespace.useEffect(function () {
utils.ObjectUtils.combinedRefs(elementRef, ref);
}, [elementRef, ref]);
var isFilled = React__namespace.useMemo(function () {
return utils.ObjectUtils.isNotEmpty(props.value) || utils.ObjectUtils.isNotEmpty(props.defaultValue);
}, [props.value, props.defaultValue]);
var hasTooltip = utils.ObjectUtils.isNotEmpty(props.tooltip);
React__namespace.useEffect(function () {
var _elementRef$current;
if (isFilled || (_elementRef$current = elementRef.current) !== null && _elementRef$current !== void 0 && _elementRef$current.value) {
utils.DomHandler.addClass(elementRef.current, 'p-filled');
} else {
utils.DomHandler.removeClass(elementRef.current, 'p-filled');
}
}, [props.disabled, isFilled]);
var rootProps = mergeProps({
className: utils.classNames(props.className, cx('root', {
context: context,
isFilled: isFilled
})),
onBeforeInput: onBeforeInput,
onInput: onInput,
onKeyDown: onKeyDown,
onPaste: onPaste
}, InputTextBase.getOtherProps(props), ptm('root'));
return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("input", _extends({
ref: elementRef
}, rootProps)), hasTooltip && /*#__PURE__*/React__namespace.createElement(tooltip.Tooltip, _extends({
target: elementRef,
content: props.tooltip,
pt: ptm('tooltip')
}, props.tooltipOptions)));
}));
InputText.displayName = 'InputText';
exports.InputText = InputText;
+1
View File
@@ -0,0 +1 @@
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("primereact/api"),r=require("primereact/componentbase"),n=require("primereact/hooks"),o=require("primereact/keyfilter"),i=require("primereact/tooltip"),l=require("primereact/utils");function a(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var u=a(e);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},s.apply(null,arguments)}function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function p(e,t){if("object"!=c(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=c(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function f(e){var t=p(e,"string");return"symbol"==c(t)?t:t+""}function y(e,t,r){return(t=f(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var d=r.ComponentBase.extend({defaultProps:{__TYPE:"InputText",__parentMetadata:null,children:void 0,className:null,invalid:!1,variant:null,keyfilter:null,onBeforeInput:null,onInput:null,onKeyDown:null,onPaste:null,tooltip:null,tooltipOptions:null,validateOnly:!1,iconPosition:null},css:{classes:{root:function(e){var t=e.props,r=e.context;return l.classNames("p-inputtext p-component",{"p-disabled":t.disabled,"p-filled":e.isFilled,"p-invalid":t.invalid,"p-variant-filled":t.variant?"filled"===t.variant:r&&"filled"===r.inputStyle})}}}});function m(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function b(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?m(Object(r),!0).forEach((function(t){y(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):m(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var v=u.memo(u.forwardRef((function(e,a){var c=n.useMergeProps(),p=u.useContext(t.PrimeReactContext),f=d.getProps(e,p),y=d.setMetaData(b(b({props:f},f.__parentMetadata),{},{context:{disabled:f.disabled,iconPosition:f.iconPosition}})),m=y.ptm,v=y.cx;r.useHandleStyle(d.css.styles,y.isUnstyled,{name:"inputtext",styled:!0});var O=u.useRef(a);u.useEffect((function(){l.ObjectUtils.combinedRefs(O,a)}),[O,a]);var P=u.useMemo((function(){return l.ObjectUtils.isNotEmpty(f.value)||l.ObjectUtils.isNotEmpty(f.defaultValue)}),[f.value,f.defaultValue]),j=l.ObjectUtils.isNotEmpty(f.tooltip);u.useEffect((function(){var e;P||null!==(e=O.current)&&void 0!==e&&e.value?l.DomHandler.addClass(O.current,"p-filled"):l.DomHandler.removeClass(O.current,"p-filled")}),[f.disabled,P]);var g=c({className:l.classNames(f.className,v("root",{context:p,isFilled:P})),onBeforeInput:function(e){f.onBeforeInput&&f.onBeforeInput(e),f.keyfilter&&o.KeyFilter.onBeforeInput(e,f.keyfilter,f.validateOnly)},onInput:function(e){var t=e.target,r=!0;f.keyfilter&&f.validateOnly&&(r=o.KeyFilter.validate(e,f.keyfilter)),f.onInput&&f.onInput(e,r),l.ObjectUtils.isNotEmpty(t.value)?l.DomHandler.addClass(t,"p-filled"):l.DomHandler.removeClass(t,"p-filled")},onKeyDown:function(e){f.onKeyDown&&f.onKeyDown(e),f.keyfilter&&o.KeyFilter.onKeyPress(e,f.keyfilter,f.validateOnly)},onPaste:function(e){f.onPaste&&f.onPaste(e),f.keyfilter&&o.KeyFilter.onPaste(e,f.keyfilter,f.validateOnly)}},d.getOtherProps(f),m("root"));return u.createElement(u.Fragment,null,u.createElement("input",s({ref:O},g)),j&&u.createElement(i.Tooltip,s({target:O,content:f.tooltip,pt:m("tooltip")},f.tooltipOptions)))})));v.displayName="InputText",exports.InputText=v;
+146
View File
@@ -0,0 +1,146 @@
/**
*
* InputText is an extension to standard input element with theming and keyfiltering.
*
* [Live Demo](https://www.primereact.org/inputtext/)
*
* @module inputtext
*
*/
import * as React from 'react';
import { ComponentHooks } from '../componentbase/componentbase';
import { KeyFilterType } from '../keyfilter';
import { PassThroughOptions } from '../passthrough';
import { TooltipPassThroughOptions } from '../tooltip/tooltip';
import { TooltipOptions } from '../tooltip/tooltipoptions';
import { PassThroughType } from '../utils/utils';
export declare type InputTextPassThroughType<T> = PassThroughType<T, InputTextPassThroughMethodOptions>;
/**
* Custom passthrough(pt) option method.
*/
export interface InputTextPassThroughMethodOptions {
props: InputTextProps;
parent: InputTextPassThroughMethodOptions;
context: InputTextContext;
}
/**
* Custom passthrough(pt) options.
* @see {@link InputTextProps.pt}
*/
export interface InputTextPassThroughOptions {
/**
* Uses to pass attributes to the root's DOM element.
*/
root?: InputTextPassThroughType<React.HTMLAttributes<HTMLInputElement>>;
/**
* Uses to pass attributes to the Tooltip component.
* @see {@link TooltipPassThroughOptions}
*/
tooltip?: TooltipPassThroughOptions;
/**
* Used to manage all lifecycle hooks
* @see {@link ComponentHooks}
*/
hooks?: ComponentHooks;
}
/**
* Defines current options in InputText component.
*/
export interface InputTextContext {
/**
* Current filled state of the component as a boolean.
* @defaultValue false
*/
filled: boolean;
/**
* Current disabled state of the component as a boolean.
* @defaultValue false
*/
disabled: boolean;
}
/**
* Defines valid properties in InputText component. In addition to these, all properties of HTMLInputElement can be used in this component.
* @group Properties
*/
export interface InputTextProps extends Omit<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, 'onInput' | 'ref' | 'value' | 'size'> {
/**
* Format definition of the keys to block.
*/
keyfilter?: KeyFilterType;
/**
* Size of the input.
*/
size?: number | string | undefined;
/**
* When present, it specifies that the component should have invalid state style.
* @defaultValue false
*/
invalid?: boolean | undefined;
/**
* Specifies the input variant of the component.
* @defaultValue outlined
*/
variant?: 'outlined' | 'filled' | undefined;
/**
* Content of the tooltip.
*/
tooltip?: string | undefined;
/**
* Configuration of the tooltip, refer to the tooltip documentation for more information.
* @type {TooltipOptions}
*/
tooltipOptions?: TooltipOptions | undefined;
/**
* When enabled, instead of blocking keys, input is validated internally to test against the regular expression.
* @defaultValue false
*/
validateOnly?: boolean | undefined;
/**
* The value of component
*/
value?: string | null | undefined;
/**
* Callback to invoke while typing value on input
* @param {React.FormEvent<HTMLInputElement>} event - Browser event
* @param {boolean} validatePattern - Whether to validate the value
*/
onInput?(event: React.FormEvent<HTMLInputElement>, validatePattern: boolean): void;
/**
* Used to get the child elements of the component.
* @readonly
*/
children?: React.ReactNode | undefined;
/**
* Uses to pass attributes to DOM elements inside the component.
* @type {InputTextPassThroughOptions}
*/
pt?: InputTextPassThroughOptions;
/**
* Used to configure passthrough(pt) options of the component.
* @type {PassThroughOptions}
*/
ptOptions?: PassThroughOptions;
/**
* When enabled, it removes component related styles in the core.
* @defaultValue false
*/
unstyled?: boolean;
}
/**
* **PrimeReact - InputText**
*
* _InputText is an extension to standard input element with theming and keyfiltering._
*
* [Live Demo](https://www.primereact.org/inputtext/)
* --- ---
* ![PrimeReact](https://primefaces.org/cdn/primereact/images/logo-100.png)
*
* @group Component
*/
export declare const InputText: React.ForwardRefExoticComponent<InputTextProps & React.RefAttributes<HTMLInputElement>>;
+177
View File
@@ -0,0 +1,177 @@
'use client';
import * as React from 'react';
import { PrimeReactContext } from 'primereact/api';
import { ComponentBase, useHandleStyle } from 'primereact/componentbase';
import { useMergeProps } from 'primereact/hooks';
import { KeyFilter } from 'primereact/keyfilter';
import { Tooltip } from 'primereact/tooltip';
import { classNames, ObjectUtils, DomHandler } from 'primereact/utils';
function _extends() {
return _extends = Object.assign ? Object.assign.bind() : function (n) {
for (var e = 1; e < arguments.length; e++) {
var t = arguments[e];
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
}
return n;
}, _extends.apply(null, arguments);
}
function _typeof(o) {
"@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
return typeof o;
} : function (o) {
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
}, _typeof(o);
}
function toPrimitive(t, r) {
if ("object" != _typeof(t) || !t) return t;
var e = t[Symbol.toPrimitive];
if (void 0 !== e) {
var i = e.call(t, r || "default");
if ("object" != _typeof(i)) return i;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return ("string" === r ? String : Number)(t);
}
function toPropertyKey(t) {
var i = toPrimitive(t, "string");
return "symbol" == _typeof(i) ? i : i + "";
}
function _defineProperty(e, r, t) {
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
value: t,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[r] = t, e;
}
var classes = {
root: function root(_ref) {
var props = _ref.props,
isFilled = _ref.isFilled,
context = _ref.context;
return classNames('p-inputtext p-component', {
'p-disabled': props.disabled,
'p-filled': isFilled,
'p-invalid': props.invalid,
'p-variant-filled': props.variant ? props.variant === 'filled' : context && context.inputStyle === 'filled'
});
}
};
var InputTextBase = ComponentBase.extend({
defaultProps: {
__TYPE: 'InputText',
__parentMetadata: null,
children: undefined,
className: null,
invalid: false,
variant: null,
keyfilter: null,
onBeforeInput: null,
onInput: null,
onKeyDown: null,
onPaste: null,
tooltip: null,
tooltipOptions: null,
validateOnly: false,
iconPosition: null
},
css: {
classes: classes
}
});
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var InputText = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (inProps, ref) {
var mergeProps = useMergeProps();
var context = React.useContext(PrimeReactContext);
var props = InputTextBase.getProps(inProps, context);
var _InputTextBase$setMet = InputTextBase.setMetaData(_objectSpread(_objectSpread({
props: props
}, props.__parentMetadata), {}, {
context: {
disabled: props.disabled,
iconPosition: props.iconPosition
}
})),
ptm = _InputTextBase$setMet.ptm,
cx = _InputTextBase$setMet.cx,
isUnstyled = _InputTextBase$setMet.isUnstyled;
useHandleStyle(InputTextBase.css.styles, isUnstyled, {
name: 'inputtext',
styled: true
});
var elementRef = React.useRef(ref);
var onKeyDown = function onKeyDown(event) {
props.onKeyDown && props.onKeyDown(event);
if (props.keyfilter) {
KeyFilter.onKeyPress(event, props.keyfilter, props.validateOnly);
}
};
var onBeforeInput = function onBeforeInput(event) {
props.onBeforeInput && props.onBeforeInput(event);
if (props.keyfilter) {
KeyFilter.onBeforeInput(event, props.keyfilter, props.validateOnly);
}
};
var onInput = function onInput(event) {
var target = event.target;
var validatePattern = true;
if (props.keyfilter && props.validateOnly) {
validatePattern = KeyFilter.validate(event, props.keyfilter);
}
props.onInput && props.onInput(event, validatePattern);
// for uncontrolled changes
ObjectUtils.isNotEmpty(target.value) ? DomHandler.addClass(target, 'p-filled') : DomHandler.removeClass(target, 'p-filled');
};
var onPaste = function onPaste(event) {
props.onPaste && props.onPaste(event);
if (props.keyfilter) {
KeyFilter.onPaste(event, props.keyfilter, props.validateOnly);
}
};
React.useEffect(function () {
ObjectUtils.combinedRefs(elementRef, ref);
}, [elementRef, ref]);
var isFilled = React.useMemo(function () {
return ObjectUtils.isNotEmpty(props.value) || ObjectUtils.isNotEmpty(props.defaultValue);
}, [props.value, props.defaultValue]);
var hasTooltip = ObjectUtils.isNotEmpty(props.tooltip);
React.useEffect(function () {
var _elementRef$current;
if (isFilled || (_elementRef$current = elementRef.current) !== null && _elementRef$current !== void 0 && _elementRef$current.value) {
DomHandler.addClass(elementRef.current, 'p-filled');
} else {
DomHandler.removeClass(elementRef.current, 'p-filled');
}
}, [props.disabled, isFilled]);
var rootProps = mergeProps({
className: classNames(props.className, cx('root', {
context: context,
isFilled: isFilled
})),
onBeforeInput: onBeforeInput,
onInput: onInput,
onKeyDown: onKeyDown,
onPaste: onPaste
}, InputTextBase.getOtherProps(props), ptm('root'));
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("input", _extends({
ref: elementRef
}, rootProps)), hasTooltip && /*#__PURE__*/React.createElement(Tooltip, _extends({
target: elementRef,
content: props.tooltip,
pt: ptm('tooltip')
}, props.tooltipOptions)));
}));
InputText.displayName = 'InputText';
export { InputText };
+1
View File
@@ -0,0 +1 @@
import*as t from"react";import{PrimeReactContext as e}from"primereact/api";import{ComponentBase as n,useHandleStyle as r}from"primereact/componentbase";import{useMergeProps as o}from"primereact/hooks";import{KeyFilter as i}from"primereact/keyfilter";import{Tooltip as l}from"primereact/tooltip";import{classNames as a,ObjectUtils as u,DomHandler as p}from"primereact/utils";function s(){return s=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)({}).hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},s.apply(null,arguments)}function f(t){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},f(t)}function c(t,e){if("object"!=f(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||"default");if("object"!=f(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}function m(t){var e=c(t,"string");return"symbol"==f(e)?e:e+""}function y(t,e,n){return(e=m(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var d=n.extend({defaultProps:{__TYPE:"InputText",__parentMetadata:null,children:void 0,className:null,invalid:!1,variant:null,keyfilter:null,onBeforeInput:null,onInput:null,onKeyDown:null,onPaste:null,tooltip:null,tooltipOptions:null,validateOnly:!1,iconPosition:null},css:{classes:{root:function(t){var e=t.props,n=t.context;return a("p-inputtext p-component",{"p-disabled":e.disabled,"p-filled":t.isFilled,"p-invalid":e.invalid,"p-variant-filled":e.variant?"filled"===e.variant:n&&"filled"===n.inputStyle})}}}});function v(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function b(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?v(Object(n),!0).forEach((function(e){y(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):v(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var O=t.memo(t.forwardRef((function(n,f){var c=o(),m=t.useContext(e),y=d.getProps(n,m),v=d.setMetaData(b(b({props:y},y.__parentMetadata),{},{context:{disabled:y.disabled,iconPosition:y.iconPosition}})),O=v.ptm,P=v.cx;r(d.css.styles,v.isUnstyled,{name:"inputtext",styled:!0});var g=t.useRef(f);t.useEffect((function(){u.combinedRefs(g,f)}),[g,f]);var j=t.useMemo((function(){return u.isNotEmpty(y.value)||u.isNotEmpty(y.defaultValue)}),[y.value,y.defaultValue]),w=u.isNotEmpty(y.tooltip);t.useEffect((function(){var t;j||null!==(t=g.current)&&void 0!==t&&t.value?p.addClass(g.current,"p-filled"):p.removeClass(g.current,"p-filled")}),[y.disabled,j]);var E=c({className:a(y.className,P("root",{context:m,isFilled:j})),onBeforeInput:function(t){y.onBeforeInput&&y.onBeforeInput(t),y.keyfilter&&i.onBeforeInput(t,y.keyfilter,y.validateOnly)},onInput:function(t){var e=t.target,n=!0;y.keyfilter&&y.validateOnly&&(n=i.validate(t,y.keyfilter)),y.onInput&&y.onInput(t,n),u.isNotEmpty(e.value)?p.addClass(e,"p-filled"):p.removeClass(e,"p-filled")},onKeyDown:function(t){y.onKeyDown&&y.onKeyDown(t),y.keyfilter&&i.onKeyPress(t,y.keyfilter,y.validateOnly)},onPaste:function(t){y.onPaste&&y.onPaste(t),y.keyfilter&&i.onPaste(t,y.keyfilter,y.validateOnly)}},d.getOtherProps(y),O("root"));return t.createElement(t.Fragment,null,t.createElement("input",s({ref:g},E)),w&&t.createElement(l,s({target:g,content:y.tooltip,pt:O("tooltip")},y.tooltipOptions)))})));O.displayName="InputText";export{O as InputText};
+198
View File
@@ -0,0 +1,198 @@
this.primereact = this.primereact || {};
this.primereact.inputtext = (function (exports, React, api, componentbase, hooks, keyfilter, tooltip, utils) {
'use strict';
function _interopNamespace(e) {
if (e && e.__esModule) return e;
var n = Object.create(null);
if (e) {
Object.keys(e).forEach(function (k) {
if (k !== 'default') {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () { return e[k]; }
});
}
});
}
n["default"] = e;
return Object.freeze(n);
}
var React__namespace = /*#__PURE__*/_interopNamespace(React);
function _extends() {
return _extends = Object.assign ? Object.assign.bind() : function (n) {
for (var e = 1; e < arguments.length; e++) {
var t = arguments[e];
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
}
return n;
}, _extends.apply(null, arguments);
}
function _typeof(o) {
"@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
return typeof o;
} : function (o) {
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
}, _typeof(o);
}
function toPrimitive(t, r) {
if ("object" != _typeof(t) || !t) return t;
var e = t[Symbol.toPrimitive];
if (void 0 !== e) {
var i = e.call(t, r || "default");
if ("object" != _typeof(i)) return i;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return ("string" === r ? String : Number)(t);
}
function toPropertyKey(t) {
var i = toPrimitive(t, "string");
return "symbol" == _typeof(i) ? i : i + "";
}
function _defineProperty(e, r, t) {
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
value: t,
enumerable: !0,
configurable: !0,
writable: !0
}) : e[r] = t, e;
}
var classes = {
root: function root(_ref) {
var props = _ref.props,
isFilled = _ref.isFilled,
context = _ref.context;
return utils.classNames('p-inputtext p-component', {
'p-disabled': props.disabled,
'p-filled': isFilled,
'p-invalid': props.invalid,
'p-variant-filled': props.variant ? props.variant === 'filled' : context && context.inputStyle === 'filled'
});
}
};
var InputTextBase = componentbase.ComponentBase.extend({
defaultProps: {
__TYPE: 'InputText',
__parentMetadata: null,
children: undefined,
className: null,
invalid: false,
variant: null,
keyfilter: null,
onBeforeInput: null,
onInput: null,
onKeyDown: null,
onPaste: null,
tooltip: null,
tooltipOptions: null,
validateOnly: false,
iconPosition: null
},
css: {
classes: classes
}
});
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
var InputText = /*#__PURE__*/React__namespace.memo(/*#__PURE__*/React__namespace.forwardRef(function (inProps, ref) {
var mergeProps = hooks.useMergeProps();
var context = React__namespace.useContext(api.PrimeReactContext);
var props = InputTextBase.getProps(inProps, context);
var _InputTextBase$setMet = InputTextBase.setMetaData(_objectSpread(_objectSpread({
props: props
}, props.__parentMetadata), {}, {
context: {
disabled: props.disabled,
iconPosition: props.iconPosition
}
})),
ptm = _InputTextBase$setMet.ptm,
cx = _InputTextBase$setMet.cx,
isUnstyled = _InputTextBase$setMet.isUnstyled;
componentbase.useHandleStyle(InputTextBase.css.styles, isUnstyled, {
name: 'inputtext',
styled: true
});
var elementRef = React__namespace.useRef(ref);
var onKeyDown = function onKeyDown(event) {
props.onKeyDown && props.onKeyDown(event);
if (props.keyfilter) {
keyfilter.KeyFilter.onKeyPress(event, props.keyfilter, props.validateOnly);
}
};
var onBeforeInput = function onBeforeInput(event) {
props.onBeforeInput && props.onBeforeInput(event);
if (props.keyfilter) {
keyfilter.KeyFilter.onBeforeInput(event, props.keyfilter, props.validateOnly);
}
};
var onInput = function onInput(event) {
var target = event.target;
var validatePattern = true;
if (props.keyfilter && props.validateOnly) {
validatePattern = keyfilter.KeyFilter.validate(event, props.keyfilter);
}
props.onInput && props.onInput(event, validatePattern);
// for uncontrolled changes
utils.ObjectUtils.isNotEmpty(target.value) ? utils.DomHandler.addClass(target, 'p-filled') : utils.DomHandler.removeClass(target, 'p-filled');
};
var onPaste = function onPaste(event) {
props.onPaste && props.onPaste(event);
if (props.keyfilter) {
keyfilter.KeyFilter.onPaste(event, props.keyfilter, props.validateOnly);
}
};
React__namespace.useEffect(function () {
utils.ObjectUtils.combinedRefs(elementRef, ref);
}, [elementRef, ref]);
var isFilled = React__namespace.useMemo(function () {
return utils.ObjectUtils.isNotEmpty(props.value) || utils.ObjectUtils.isNotEmpty(props.defaultValue);
}, [props.value, props.defaultValue]);
var hasTooltip = utils.ObjectUtils.isNotEmpty(props.tooltip);
React__namespace.useEffect(function () {
var _elementRef$current;
if (isFilled || (_elementRef$current = elementRef.current) !== null && _elementRef$current !== void 0 && _elementRef$current.value) {
utils.DomHandler.addClass(elementRef.current, 'p-filled');
} else {
utils.DomHandler.removeClass(elementRef.current, 'p-filled');
}
}, [props.disabled, isFilled]);
var rootProps = mergeProps({
className: utils.classNames(props.className, cx('root', {
context: context,
isFilled: isFilled
})),
onBeforeInput: onBeforeInput,
onInput: onInput,
onKeyDown: onKeyDown,
onPaste: onPaste
}, InputTextBase.getOtherProps(props), ptm('root'));
return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("input", _extends({
ref: elementRef
}, rootProps)), hasTooltip && /*#__PURE__*/React__namespace.createElement(tooltip.Tooltip, _extends({
target: elementRef,
content: props.tooltip,
pt: ptm('tooltip')
}, props.tooltipOptions)));
}));
InputText.displayName = 'InputText';
exports.InputText = InputText;
Object.defineProperty(exports, '__esModule', { value: true });
return exports;
})({}, React, primereact.api, primereact.componentbase, primereact.hooks, primereact.keyfilter, primereact.tooltip, primereact.utils);
+1
View File
@@ -0,0 +1 @@
this.primereact=this.primereact||{},this.primereact.inputtext=function(e,t,n,r,o,i,l,a){"use strict";function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var s=u(t);function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},c.apply(null,arguments)}function p(e){return p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},p(e)}function f(e,t){if("object"!=p(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=p(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function y(e){var t=f(e,"string");return"symbol"==p(t)?t:t+""}function d(e,t,n){return(t=y(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var m=r.ComponentBase.extend({defaultProps:{__TYPE:"InputText",__parentMetadata:null,children:void 0,className:null,invalid:!1,variant:null,keyfilter:null,onBeforeInput:null,onInput:null,onKeyDown:null,onPaste:null,tooltip:null,tooltipOptions:null,validateOnly:!1,iconPosition:null},css:{classes:{root:function(e){var t=e.props,n=e.context;return a.classNames("p-inputtext p-component",{"p-disabled":t.disabled,"p-filled":e.isFilled,"p-invalid":t.invalid,"p-variant-filled":t.variant?"filled"===t.variant:n&&"filled"===n.inputStyle})}}}});function b(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function v(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?b(Object(n),!0).forEach((function(t){d(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):b(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var O=s.memo(s.forwardRef((function(e,t){var u=o.useMergeProps(),p=s.useContext(n.PrimeReactContext),f=m.getProps(e,p),y=m.setMetaData(v(v({props:f},f.__parentMetadata),{},{context:{disabled:f.disabled,iconPosition:f.iconPosition}})),d=y.ptm,b=y.cx;r.useHandleStyle(m.css.styles,y.isUnstyled,{name:"inputtext",styled:!0});var O=s.useRef(t);s.useEffect((function(){a.ObjectUtils.combinedRefs(O,t)}),[O,t]);var P=s.useMemo((function(){return a.ObjectUtils.isNotEmpty(f.value)||a.ObjectUtils.isNotEmpty(f.defaultValue)}),[f.value,f.defaultValue]),j=a.ObjectUtils.isNotEmpty(f.tooltip);s.useEffect((function(){var e;P||null!==(e=O.current)&&void 0!==e&&e.value?a.DomHandler.addClass(O.current,"p-filled"):a.DomHandler.removeClass(O.current,"p-filled")}),[f.disabled,P]);var g=u({className:a.classNames(f.className,b("root",{context:p,isFilled:P})),onBeforeInput:function(e){f.onBeforeInput&&f.onBeforeInput(e),f.keyfilter&&i.KeyFilter.onBeforeInput(e,f.keyfilter,f.validateOnly)},onInput:function(e){var t=e.target,n=!0;f.keyfilter&&f.validateOnly&&(n=i.KeyFilter.validate(e,f.keyfilter)),f.onInput&&f.onInput(e,n),a.ObjectUtils.isNotEmpty(t.value)?a.DomHandler.addClass(t,"p-filled"):a.DomHandler.removeClass(t,"p-filled")},onKeyDown:function(e){f.onKeyDown&&f.onKeyDown(e),f.keyfilter&&i.KeyFilter.onKeyPress(e,f.keyfilter,f.validateOnly)},onPaste:function(e){f.onPaste&&f.onPaste(e),f.keyfilter&&i.KeyFilter.onPaste(e,f.keyfilter,f.validateOnly)}},m.getOtherProps(f),d("root"));return s.createElement(s.Fragment,null,s.createElement("input",c({ref:O},g)),j&&s.createElement(l.Tooltip,c({target:O,content:f.tooltip,pt:d("tooltip")},f.tooltipOptions)))})));return O.displayName="InputText",e.InputText=O,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.componentbase,primereact.hooks,primereact.keyfilter,primereact.tooltip,primereact.utils);
+7
View File
@@ -0,0 +1,7 @@
{
"main": "./inputtext.cjs.js",
"module": "./inputtext.esm.js",
"unpkg": "./inputtext.min.js",
"types": "./inputtext.d.ts",
"sideEffects": false
}