60e2149072
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.
2 lines
2.4 KiB
JavaScript
2 lines
2.4 KiB
JavaScript
import t,{useRef as r,useContext as e,Children as o,cloneElement as n}from"react";import{PrimeReactContext as i}from"primereact/api";import{useMergeProps as c}from"primereact/hooks";import{classNames as a}from"primereact/utils";import{ComponentBase as p}from"primereact/componentbase";function s(){return s=Object.assign?Object.assign.bind():function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var o in e)({}).hasOwnProperty.call(e,o)&&(t[o]=e[o])}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 l(t,r){if("object"!=f(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var o=e.call(t,r||"default");if("object"!=f(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}function u(t){var r=l(t,"string");return"symbol"==f(r)?r:r+""}function m(t,r,e){return(r=u(r))in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}var b=p.extend({defaultProps:{__TYPE:"IconField",__parentMetadata:null,children:void 0,className:null,iconPosition:"right"},css:{classes:{root:function(t){var r=t.props;return a("p-icon-field",{"p-icon-field-right":"right"===r.iconPosition,"p-icon-field-left":"left"===r.iconPosition})}}}});function y(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable}))),e.push.apply(e,o)}return e}function P(t){for(var r=1;r<arguments.length;r++){var e=null!=arguments[r]?arguments[r]:{};r%2?y(Object(e),!0).forEach((function(r){m(t,r,e[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):y(Object(e)).forEach((function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))}))}return t}var v=t.memo(t.forwardRef((function(p,f){var l=r(f),u=c(),m=e(i),y=b.getProps(p,m),v=b.setMetaData(P(P({props:y},y.__parentMetadata),{},{context:{iconPosition:y.iconPosition}})),O=v.ptm,d=u({className:a(y.className,(0,v.cx)("root",{iconPosition:y.iconPosition}))},b.getOtherProps(y),O("root"));return t.createElement("div",s({},d,{ref:l}),o.map(y.children,(function(t,r){return n(t,{iconPosition:y.iconPosition})})))})));v.displayName="IconField";export{v as IconField};
|