@eclipse-scout/core
Version:
Eclipse Scout runtime
7 lines (6 loc) • 41.4 kB
JavaScript
import*as i from"@eclipse-scout/core";import"jasmine-ajax";import"jasmine-jquery";var g={};g.n=s=>{var e=s&&s.__esModule?()=>s.default:()=>s;return g.d(e,{a:e}),e},g.d=(s,e)=>{for(var t in e)g.o(e,t)&&!g.o(s,t)&&Object.defineProperty(s,t,{enumerable:!0,get:e[t]})},g.o=(s,e)=>Object.prototype.hasOwnProperty.call(s,e),g.r=s=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(s,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(s,"__esModule",{value:!0})};var u={};g.r(u),g.d(u,{ActiveDummyLookupCall:()=>Z,CloneSpecHelper:()=>q,ColumnDescriptorDummyLookupCall:()=>ee,DelayedStaticLookupCall:()=>Y,DummyLookupCall:()=>D,EmptyDummyLookupCall:()=>z,ErroneousLookupCall:()=>X,FocusManagerSpecHelper:()=>re,FormSpecHelper:()=>E,GroupBoxSpecHelper:()=>se,JQueryTesting:()=>d,JasmineScout:()=>I,JasmineScoutUtil:()=>b,LanguageDummyLookupCall:()=>te,LocalUiNotificationSystem:()=>x,LocaleSpecHelper:()=>f,LookupRowSelectionStrategy:()=>y,MenuSpecHelper:()=>F,MicrotaskStaticLookupCall:()=>Q,OutlineSpecHelper:()=>V,SpecForm:()=>P,SpecLifecycle:()=>oe,SpecProposalField:()=>G,SpecRadioButtonGroup:()=>B,SpecSmartFieldTouchPopup:()=>J,SpecTable:()=>R,SpecTableAdapter:()=>N,SpecTree:()=>j,SpecUiPreferencesStore:()=>T,TabBoxSpecHelper:()=>K,TableSpecHelper:()=>A,TestBeanField:()=>W,TestingApp:()=>v,TreeSpecHelper:()=>U,UiNotificationsMock:()=>O,accessSpecHelper:()=>k,default:()=>ae,jasmineScoutMatchers:()=>L,proposalFieldSpecHelper:()=>S});var C={};g.r(C),g.d(C,{ActiveDummyLookupCall:()=>Z,CloneSpecHelper:()=>q,ColumnDescriptorDummyLookupCall:()=>ee,DelayedStaticLookupCall:()=>Y,DummyLookupCall:()=>D,EmptyDummyLookupCall:()=>z,ErroneousLookupCall:()=>X,FocusManagerSpecHelper:()=>re,FormSpecHelper:()=>E,GroupBoxSpecHelper:()=>se,JQueryTesting:()=>d,JasmineScout:()=>I,JasmineScoutUtil:()=>b,LanguageDummyLookupCall:()=>te,LocalUiNotificationSystem:()=>x,LocaleSpecHelper:()=>f,LookupRowSelectionStrategy:()=>y,MenuSpecHelper:()=>F,MicrotaskStaticLookupCall:()=>Q,OutlineSpecHelper:()=>V,SpecForm:()=>P,SpecLifecycle:()=>oe,SpecProposalField:()=>G,SpecRadioButtonGroup:()=>B,SpecSmartFieldTouchPopup:()=>J,SpecTable:()=>R,SpecTableAdapter:()=>N,SpecTree:()=>j,SpecUiPreferencesStore:()=>T,TabBoxSpecHelper:()=>K,TableSpecHelper:()=>A,TestBeanField:()=>W,TestingApp:()=>v,TreeSpecHelper:()=>U,UiNotificationsMock:()=>O,accessSpecHelper:()=>k,default:()=>ae,jasmineScoutMatchers:()=>L,proposalFieldSpecHelper:()=>S});var le=s=>{var e={};return g.d(e,s),e},Ye=s=>()=>s;const a=le({AccessControl:()=>i.AccessControl,App:()=>i.App,AutoLeafPageWithNodes:()=>i.AutoLeafPageWithNodes,BeanField:()=>i.BeanField,Cell:()=>i.Cell,Column:()=>i.Column,CompactTree:()=>i.CompactTree,DecimalFormat:()=>i.DecimalFormat,Desktop:()=>i.Desktop,Device:()=>i.Device,Form:()=>i.Form,FormLifecycle:()=>i.FormLifecycle,GroupBox:()=>i.GroupBox,HtmlEnvironment:()=>i.HtmlEnvironment,HybridManager:()=>i.HybridManager,Locale:()=>i.Locale,Menu:()=>i.Menu,MessageBox:()=>i.MessageBox,Mode:()=>i.Mode,ModeSelector:()=>i.ModeSelector,ObjectFactory:()=>i.ObjectFactory,ObjectIdProvider:()=>i.ObjectIdProvider,Outline:()=>i.Outline,OutlineAdapter:()=>i.OutlineAdapter,Page:()=>i.Page,PageWithNodes:()=>i.PageWithNodes,PageWithTable:()=>i.PageWithTable,Permission:()=>i.Permission,PermissionCollection:()=>i.PermissionCollection,PermissionCollectionType:()=>i.PermissionCollectionType,ProposalField:()=>i.ProposalField,RadioButton:()=>i.RadioButton,RadioButtonGroup:()=>i.RadioButtonGroup,RemoteApp:()=>i.RemoteApp,RemoteEvent:()=>i.RemoteEvent,Session:()=>i.Session,SmartFieldTouchPopup:()=>i.SmartFieldTouchPopup,StaticLookupCall:()=>i.StaticLookupCall,StringField:()=>i.StringField,System:()=>i.System,TabBox:()=>i.TabBox,TabItem:()=>i.TabItem,Table:()=>i.Table,TableAdapter:()=>i.TableAdapter,TableField:()=>i.TableField,TableTextUserFilter:()=>i.TableTextUserFilter,TextColumnUserFilter:()=>i.TextColumnUserFilter,Tree:()=>i.Tree,TreeAdapter:()=>i.TreeAdapter,TypeDescriptor:()=>i.TypeDescriptor,UiNotificationSystem:()=>i.UiNotificationSystem,UiPreferencesStore:()=>i.UiPreferencesStore,access:()=>i.access,arrays:()=>i.arrays,comparators:()=>i.comparators,dataObjects:()=>i.dataObjects,keys:()=>i.keys,objects:()=>i.objects,scout:()=>i.scout,strings:()=>i.strings,uiNotifications:()=>i.uiNotifications,uiPreferences:()=>i.uiPreferences});class v extends a.RemoteApp{_defaultValuesBootstrapper(){return null}_installErrorHandler(){}_createSession(e){return super._createSession(e)}_defaultBootstrappers(e){return[a.Device.get().bootstrap.bind(a.Device.get())]}static set(e){a.App._set(e)}}const ie=require("jquery");var p=g.n(ie),ne=s=>{var e={};return g.d(e,s),e},Ze=s=>()=>s;const et=ne({});let H={};const b={loadJsonResource(s){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(a.scout.assertParameter("jsonResourceUrl",s),a.scout.nvl(e.useCache,!0)){let t=H[s];if(t)return p().resolvedPromise(t)}return p().ajax({async:!1,method:"GET",dataType:"json",contentType:"application/json; charset=UTF-8",cache:!1,url:s}).done(t=>(a.scout.nvl(e.useCache,!0)&&(H[s]=t),p().resolvedPromise(t))).fail((t,r,o)=>{throw new Error("Could not load resource from url: "+s)})},loadJsonResourceAndMockRestCall(s,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};a.scout.assertParameter("resourceUrlToMock",s),b.loadJsonResource(e,t).then(r=>b.mockRestCall(s,r,t))},mockRestLookupCall(s,e,t){a.scout.assertParameter("resourceUrlToMock",s),e=a.arrays.ensure(e).map(r=>p().extend({active:!0,enabled:!0,parentId:null},r)),b.mockRestCall(s,{rows:e},{restriction:t}),e.forEach(r=>{b.mockRestCall(s,{rows:[r]},{restriction:r.id})})},mockRestCall(s,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=new RegExp(".*"+a.strings.quote(s)+".*"),o=t.restriction?new RegExp(".*"+a.strings.quote(t.restriction)+".*"):void 0;const n=(t.stringify||JSON.stringify)(e);jasmine.Ajax.stubRequest(r,o,t.method).andReturn({status:200,responseText:n})},mockDataObjectRestCall(s,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};t.stringify=t.stringify||a.dataObjects.stringify,this.mockRestCall(s,e,t)},captureNotMockedCalls(){jasmine.Ajax.stubRequest(/.*/).andCallFunction(s=>{fail("Ajax call not mocked for url: "+s.url+", method: "+s.method)})},mockHybridAction(s,e,t){let r=a.HybridManager.get(s);r.on("hybridAction",o=>{o.data.actionType===e&&setTimeout(()=>{let l=t(o);l&&r.setProperty("widgets",l)})})},assertPageCompleteness(s){s=s||{};let e=new Set([a.PageWithNodes,a.PageWithTable,a.AutoLeafPageWithNodes,...s.pagesNotRequiringUuid||[]]),t=new Set([a.PageWithNodes,a.PageWithTable,a.AutoLeafPageWithNodes,...s.pagesNotRequiringPageParam||[]]),r=new Set,o=new Set,l=new Set;for(const n of a.ObjectFactory.get().getSubClassesOf(a.Page)){let c=a.ObjectFactory.get().getObjectType(n);if(s.namespace&&!c.startsWith(s.namespace))continue;let h=new n;if(h.minimalInit(),a.scout.nvl(s.assertUuid,!0)&&!h.uuid&&!e.has(n)&&r.add(c),a.scout.nvl(s.assertPageParam,!0)){let m=`${c}ParamDo`;!a.TypeDescriptor.resolveType(m)&&!t.has(n)&&o.add(c)}!r.has(c)&&!o.has(c)&&l.add(c)}r.size>0&&fail([`Found ${r.size} pages without a uuid. Please ensure every page has a uuid.`,...r].join(`
`)),o.size>0&&fail([`Found ${o.size} pages without a pageParam.`,"If a pageParam is required, create one and add `declare pageParam: NewPageParam` to your page.","Otherwise, add the page to the ignore list (`options.pagesNotRequiringPageParam`).",...o].join(`
`)),l.size>0&&console.log(`PageCompleteness: the following pages are complete: ${Array.from(l).join(", ")}`),l.size===0&&r.size===0&&o.size===0&&console.log("PageCompleteness: no pages found in this module."),expect(!0).toBe(!0)}};var ce=s=>{var e={};return g.d(e,s),e},tt=s=>()=>s;const rt=ce({});window.sandboxSession=s=>{s=s||{};let e=p()("#sandbox").addClass("scout"),t=s;t.portletPartId=s.portletPartId||"0",t.backgroundJobPollingEnabled=!1,t.suppressErrors=!0,t.$entryPoint=e;let r=a.scout.create(a.Session,t);e.data("sandboxSession",r),r._requestToJson=l=>JSON.stringify(l),r.uiSessionId="1.1",r.modelAdapterRegistry[r.uiSessionId]=r,r.locale=new f().createLocale("de-CH");let o=s.desktop||{};return o.navigationVisible=a.scout.nvl(o.navigationVisible,!1),o.headerVisible=a.scout.nvl(o.headerVisible,!1),o.benchVisible=a.scout.nvl(o.benchVisible,!1),o.parent=a.scout.nvl(o.parent,r.root),r.desktop=a.scout.create(a.Desktop,o),a.scout.nvl(s.renderDesktop,!0)&&r._renderDesktop(),e.window().off("resize",r.desktop._resizeHandler),r},window.linkWidgetAndAdapter=(s,e)=>{let t=s.session,r=a.scout.create(e,{id:s.id,session:t});r.widget=s,s.modelAdapter=r,r._attachWidget(),r._postCreateWidget()},window.mapAdapterData=s=>{let e={};return s=a.arrays.ensure(s),s.forEach(t=>{e[t.id]=t}),e},window.registerAdapterData=(s,e)=>{let t=window.mapAdapterData(s);e._copyAdapterData(t)},window.removePopups=(s,e)=>{e=e||".popup",s.$entryPoint.children(e).each(function(){let t=a.scout.widget(p()(this));t.animateRemoval=!1,t.remove()})},window.createSimpleModel=(s,e,t)=>{t===void 0&&(t=a.ObjectIdProvider.get().createUiSeqId());let r=e.desktop;return{id:t,objectType:s,parent:r,session:e}},window.mostRecentJsonRequest=()=>{let s=jasmine.Ajax.requests.mostRecent();if(s)return JSON.parse(s.params)},window.sandboxDesktop=()=>{let s=sandbox();return s.addClass("scout desktop"),s},window.sendQueuedAjaxCalls=(s,e)=>{e=e||0,jasmine.clock().tick(e),window.receiveResponseForAjaxCall(null,s)},window.receiveResponseForAjaxCall=(s,e)=>{e||(e={status:200,responseText:'{"events":[]}'}),s||(s=jasmine.Ajax.requests.mostRecent()),s&&s.onload&&s.respondWith(e)},window.uninstallUnloadHandlers=s=>{p()(window).off("beforeunload."+s.uiSessionId).off("unload."+s.uiSessionId)},window.createPropertyChangeEvent=(s,e)=>({target:s.id,properties:e,type:"property"}),window.sleep=s=>{let e=p().Deferred();return setTimeout(()=>e.resolve(),s),e.promise()};const I={runTestSuite(s){this.startApp(v),beforeAll(()=>{spyOn(a.scout,"reloadPage").and.callFake(()=>{})}),beforeEach(()=>{jasmine.addMatchers(L),T.install()}),afterEach(()=>{const e=p()("#sandbox"),t=e.data("sandboxSession");e.removeData("sandboxSession"),t?.layoutValidator&&(t.layoutValidator._postValidateFunctions=[],t.layoutValidator.desktop=null),a.HtmlEnvironment.get().off("propertyChange"),a.uiNotifications.tearDown(),T.uninstall()}),s.keys().forEach(s)},startApp(s){jasmine.clock().install(),jasmine.Ajax.install(),a.App.addListener("prepare",()=>{b.mockRestCall("api/permissions",{type:a.PermissionCollectionType.ALL}),b.mockRestCall("api/codes",{}),O.register()}),new s().init(),jasmine.clock().tick(1e3),jasmine.Ajax.uninstall(),jasmine.clock().uninstall()}};class f{static DEFAULT_LOCALE="de-CH";static GERMAN_LOCALE="de-DE";static DEFAULT_DATE_FORMAT_PATTERN="dd.MM.yyyy";static DEFAULT_TIME_FORMAT_PATTERN="HH:mm";decimalFormatSymbolsByLocale;dateFormatSymbolsByLocale;dateFormatPatternByLocale;constructor(){this._initDecimalFormatSymbols(),this._initDateFormatSymbols(),this._initDateFormatDefaultPatterns()}createModel(e){return{languageTag:e}}createLocale(e){let t=this.createModel(e);return t.decimalFormatSymbols=this.decimalFormatSymbolsByLocale[e],t.decimalFormatPatternDefault="#,##0.###",t.dateFormatSymbols=this.dateFormatSymbolsByLocale[e],t.dateFormatPatternDefault=this.dateFormatPatternByLocale[e]||f.DEFAULT_DATE_FORMAT_PATTERN,t.timeFormatPatternDefault=f.DEFAULT_TIME_FORMAT_PATTERN,new a.Locale(t)}_initDecimalFormatSymbols(){this.decimalFormatSymbolsByLocale={},this.decimalFormatSymbolsByLocale[f.DEFAULT_LOCALE]=this.createDecimalFormatSymbolsForDeCH(),this.decimalFormatSymbolsByLocale[f.GERMAN_LOCALE]=this.createDecimalFormatSymbolsForDeDE()}createDecimalFormatSymbolsForDeCH(){return{decimalSeparator:".",groupingSeparator:"'",minusSign:"-"}}createDecimalFormatSymbolsForDeDE(){let e=this.createDecimalFormatSymbolsForDeCH();return e.decimalSeparator=",",e.groupingSeparator=".",e}_initDateFormatSymbols(){let e=this.createDateFormatSymbolsForDe();this.dateFormatSymbolsByLocale={},this.dateFormatSymbolsByLocale[f.DEFAULT_LOCALE]=e,this.dateFormatSymbolsByLocale[f.GERMAN_LOCALE]=e}_initDateFormatDefaultPatterns(){this.dateFormatPatternByLocale={},this.dateFormatPatternByLocale.de="dd.MM.yyyy"}createDateFormatSymbolsForDe(){return{weekdays:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],weekdaysShort:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthsShort:["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],am:"AM",pm:"PM"}}}class F{session;constructor(e){this.session=e}createModel(e,t){let r=createSimpleModel("Menu",this.session);return $.extend(r,{text:e,menuTypes:t}),r}createMenu(e){return e=e||{},e.objectType=e.objectType||a.Menu,e.session=this.session,e.parent=this.session.desktop,a.scout.create(e)}}let w=null,M=null;class T extends a.UiPreferencesStore{preferences=null;loadCount=0;storeCount=0;subscribers=[];async _load(){return this.loadCount++,this.preferences}async _store(e){this.storeCount++,this.preferences=e}async _subscribeForUpdates(e){this.subscribers.push(e)}static install(){w&&T.uninstall(),w=new T,M=a.uiPreferences.replaceStore(w)}static uninstall(){a.scout.assertValue(w,"Mock not installed"),a.uiPreferences.replaceStore(M),w=null,M=null}static get(){return a.scout.assertValue(w,"Mock not installed")}}const k={install(s){return s=s||k.allPermissionCollectionModel(),a.ObjectFactory.get().register(a.AccessControl,()=>new ue(s)),a.access.bootstrap("permissions")},uninstall(){a.ObjectFactory.get().register(a.AccessControl,()=>new a.AccessControl),a.access.tearDown()},permissionCollectionModel(){const s=new Map;for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return a.arrays.ensure(t).forEach(o=>{o=a.Permission.ensure(o),s.set(o.id,[...a.arrays.ensure(s.get(o.id)),o])}),{permissions:s,type:a.PermissionCollectionType.DEFAULT}},allPermissionCollectionModel(){return{type:a.PermissionCollectionType.ALL}},nonePermissionCollectionModel(){return{type:a.PermissionCollectionType.NONE}}};class ue extends a.AccessControl{constructor(e){super(),this._permissionCollection=a.PermissionCollection.ensure(e)}_load(){return p().resolvedPromise()}_subscribeForNotifications(){return p().resolvedPromise()}_unsubscribeFromNotifications(){}}class U{session;constructor(e){this.session=e}createModel(e){let t=createSimpleModel("Tree",this.session);return e&&(t.nodes=e),t}createModelFixture(e,t,r){return this.createModel(this.createModelNodes(e,t,{expanded:r}))}createModelNode(e,t,r){return p().extend({id:e||a.ObjectIdProvider.get().createUiSeqId(),text:t},r)}createModelNodes(e,t,r){return this.createModelNodesInternal(e,t,null,r)}createModelNodesInternal(e,t,r,o){if(!e)return;let l=[];t||(t=0),o=o||{};for(let n=0;n<e;n++){let c=n+"";r&&(c=r.id+"_"+c),l[n]=this.createModelNode(c,"node "+c,o),t>0&&(l[n].childNodes=this.createModelNodesInternal(e,t-1,l[n],o))}return l}createTree(e){let t={parent:this.session.desktop};e=p().extend({},t,e);let r=new j;return r.init(e),r}createTreeAdapter(e){let t=new a.TreeAdapter;return t.init(e),t}createCompactTree(e){let t=new a.CompactTree;return t.init(e),t}createCompactTreeAdapter(e){e.objectType="Tree:Compact";let t=new a.TreeAdapter;return t.init(e),t}findAllNodes(e){return e.$container.find(".tree-node")}createNodeExpandedEvent(e,t,r){return{target:e.id,nodeId:t,expanded:r,type:"nodeExpanded"}}selectNodesAndAssert(e,t){e.selectNodes(t),this.assertSelection(e,t)}assertSelection(e,t){let r=e.$selectedNodes();expect(r.length).toBe(t.length);let o=[];r.each(function(){o.push(p()(this).data("node"))}),expect(a.arrays.equalsIgnoreOrder(t,o)).toBeTruthy(),expect(a.arrays.equalsIgnoreOrder(t,e.selectedNodes)).toBeTruthy()}createNodesSelectedEvent(e,t){return{target:e.id,nodeIds:t,type:"nodesSelected"}}createNodesInsertedEvent(e,t,r){return{target:e.id,commonParentNodeId:r,nodes:t,type:"nodesInserted"}}createNodesInsertedEventTopNode(e,t){return{target:e.id,nodes:t,type:"nodesInserted"}}createNodesDeletedEvent(e,t,r){return{target:e.id,commonParentNodeId:r,nodeIds:t,type:"nodesDeleted"}}createAllChildNodesDeletedEvent(e,t){return{target:e.id,commonParentNodeId:t,type:"allChildNodesDeleted"}}createNodeChangedEvent(e,t){return{target:e.id,nodeId:t,type:"nodeChanged"}}createNodesUpdatedEvent(e,t){return{target:e.id,nodes:t,type:"nodesUpdated"}}createChildNodeOrderChangedEvent(e,t,r){return{target:e.id,parentNodeId:r,childNodeIds:t,type:"childNodeOrderChanged"}}createTreeEnabledEvent(e,t){return{target:e.id,type:"property",properties:{enabled:t}}}}class A{session;menuHelper;constructor(e){this.session=e,this.menuHelper=new F(e)}createModel(e,t){let r=createSimpleModel("Table",this.session);return t&&(r.rows=t),e&&(r.columns=e),r}createModelRow(e,t,r){return{id:e||a.ObjectIdProvider.get().createUiSeqId(),cells:t,parentRow:r}}createModelRowByTexts(e,t,r){t=a.arrays.ensure(t);let o=[];for(let l=0;l<t.length;l++)r?o[l]=t[l]:o[l]=this.createModelCell(t[l]);return this.createModelRow(e,o)}createModelRowByValues(e,t){t=a.arrays.ensure(t);let r=[];for(let o=0;o<t.length;o++)r[o]=this.createModelCell(null,t[o]);return this.createModelRow(e,r)}createModelColumn(e,t){let r={id:a.ObjectIdProvider.get().createUiSeqId(),text:e,objectType:t===void 0?"Column":t,uiSortPossible:!0};return t==="NumberColumn"&&(r.decimalFormat=new a.DecimalFormat(this.session.locale)),r}createModelCell(e,t){let r={};return e!==void 0&&(r.text=e),t!==void 0&&(r.value=t),a.scout.create(a.Cell,r)}createMenuModel(e){return this.menuHelper.createModel(e,[a.Table.MenuType.SingleSelection])}createMenuModelWithSingleAndHeader(e){return this.menuHelper.createModel(e,[a.Table.MenuType.SingleSelection,a.Table.MenuType.Header])}createModelColumns(e,t){if(!e)return;t||(t="Column");let r=[],o=[];if(a.objects.isArray(t)){if(t.length!==e)throw new Error("Column count("+e+") does not match with columnType.length ("+t.length+").");o=t}else for(let l=0;l<e;l++)o.push(t);for(let l=0;l<e;l++)r[l]=this.createModelColumn("col"+l,o[l]);return r}createModelCells(e,t){let r=[];if(t===void 0&&(t=""),typeof e=="number")for(let o=0;o<e;o++)r[o]=this.createModelCell(t+"_"+o,"cell"+t+"_"+o);else for(let o=0;o<e.length;o++){let l="cell"+t+o;e[o].objectType==="NumberColumn"&&(l=t+o),r[o]=this.createModelCell(t+"_"+o,l)}return r}createModelRows(e,t,r){if(!t)return;let o=[];for(let l=0;l<t;l++)o[l]=this.createModelRow(null,this.createModelCells(e,l+""),r);return o}createModelSingleColumnByTexts(e){let t=[];for(let r=0;r<e.length;r++)t.push(this.createModelRowByTexts(null,e[r]));return this.createModel(this.createModelColumns(1),t)}createModelSingleColumnByValues(e,t){let r=[];for(let o=0;o<e.length;o++)r.push(this.createModelRowByValues(null,e[o]));return this.createModel(this.createModelColumns(1,t),r)}createModelFixture(e,t){return this.createModel(this.createModelColumns(e),this.createModelRows(e,t))}createTableWithOneColumn(){let e=this.createModelFixture(1,1);return this.createTable(e)}createModelSingleConfiguredCheckableColumn(e){let t=this.createModelColumns(1);return t[0].checkable=!0,this.createModel(t,this.createModelRows(1,e))}createTable(e){let t={parent:this.session.desktop};return e=p().extend({},t,e),a.scout.create(R,e)}createTableAdapter(e){let t=new N;return t.init(e),t}createColumnFilter(e){let t=new a.TextColumnUserFilter;return t.init(e),t}createAndRegisterColumnFilter(e){let t=this.createColumnFilter(e);return e.table.addFilter(t),t}createTableTextFilter(e,t){return a.scout.create(a.TableTextUserFilter,{session:this.session,table:e,text:t})}createTextColumnFilter(e,t,r){return a.scout.create(a.TextColumnUserFilter,{session:this.session,table:e,column:t,freeText:r})}createColumnStructureChangedEvent(e,t){return{target:e.id,columns:t,type:"columnStructureChanged"}}createRowsInsertedEvent(e,t){return{target:e.id,rows:t,type:"rowsInserted"}}createAllRowsDeletedEvent(e){return{target:e.id,type:"allRowsDeleted"}}createFiltersChangedEvent(e,t){return{target:e.id,filters:t,type:"filtersChanged"}}applyDisplayStyle(e){e.$data.css("position","relative"),e.$rows().each(function(){let t=p()(this);t.css("display","table-row"),t.children(".table-cell").each(function(){p()(this).css("display","table-cell")})})}getRowIds(e){let t=[];for(let r=0;r<e.length;r++)t.push(e[r].id);return t}selectRowsAndAssert(e,t){e.selectRows(t),this.assertSelection(e,t)}assertSelection(e,t){let r=e.$selectedRows();expect(r.length).toBe(t.length);let o=[];r.each(function(){o.push(p()(this).data("row")),r.length===1&&expect(p()(this).hasClass("select-single")).toBeTruthy()}),expect(a.arrays.equalsIgnoreOrder(t,o)).toBeTruthy(),expect(a.arrays.equalsIgnoreOrder(t,e.selectedRows)).toBeTruthy()}assertTextsInCells(e,t,r){expect(e.length).toBe(r.length);for(let o=0;o<e.length;o++)expect(e[o].cells[t].text).toBe(r[o])}assertValuesInCells(e,t,r){expect(e.length).toBe(r.length);for(let o=0;o<e.length;o++)expect(e[o].cells[t].value).toBe(r[o])}assertDatesInCells(e,t,r){expect(e.length).toBe(r.length);for(let o=0;o<e.length;o++)expect(e[o].cells[t].value.getTime()).toBe(r[o].getTime())}assertSelectionEvent(e,t){let r=new a.RemoteEvent(e,"rowsSelected",{rowIds:t});expect(mostRecentJsonRequest()).toContainEvents(r)}getDisplayingContextMenu(e){return p()("body").find(".context-menu")}resetIntlCollator(){a.comparators.TEXT.installed=!1,a.comparators.TEXT.collator=null}}class E{session;constructor(e){this.session=e}closeMessageBoxes(e){if(!this.session)return;let t=e||a.MessageBox.Buttons.YES;this.findMessageBoxes().forEach(r=>r.trigger("action",{option:t}))}findMessageBoxes(){if(!this.session)return new Set;const e=new Set;return this.session.$entryPoint&&this.session.$entryPoint.find(".messagebox").get().map(t=>a.scout.widget(t,a.MessageBox)).filter(t=>!!t).forEach(t=>e.add(t)),this.session.desktop&&this.session.desktop.messageBoxes.forEach(t=>e.add(t)),e}createViewWithOneField(e){let t=this.createFormWithOneField(e);return t.displayHint=a.Form.DisplayHint.VIEW,t}createFormWithOneField(e){let t={parent:this.session.desktop};e=p().extend({},t,e);let r=a.scout.create(P,e),o=this.createGroupBoxWithFields(r,1);return r.setRootGroupBox(o),r}createFormWithFieldsAndTabBoxes(e){let t=(m,_)=>({id:m,objectType:a.StringField,label:m,mandatory:_}),r=(m,_)=>({id:m,objectType:a.TabBox,tabItems:_}),o=(m,_)=>({id:m,objectType:a.TabItem,label:"id",fields:_}),l=(m,_)=>({id:m,objectType:a.TableField,label:m,table:{id:m+"Table",objectType:a.Table,columns:_}}),n=(m,_)=>({id:m,objectType:a.Column,text:m,editable:!0,mandatory:_}),c={parent:this.session.desktop,id:"Form",title:"Form",rootGroupBox:{id:"RootGroupBox",objectType:a.GroupBox,fields:[t("Field1",!1),t("Field2",!1),t("Field3",!0),t("Field4",!0),r("TabBox",[o("TabA",[t("FieldA1",!1),t("FieldA2",!0),r("TabBoxA",[o("TabAA",[t("FieldAA1",!1),t("FieldAA2",!0)]),o("TabAB",[t("FieldAB1",!1),t("FieldAB2",!0)]),o("TabAC",[t("FieldAC1",!1),t("FieldAC2",!0)])])]),o("TabB",[t("FieldB1",!1),t("FieldB2",!1),t("FieldB3",!0),t("FieldB4",!0),l("TableFieldB5",[n("ColumnB51",!1),n("ColumnB52",!0)])])])]}};e=p().extend({},c,e);let h=a.scout.create(a.Form,e);return h.widget("TableFieldB5",a.TableField).table.insertRows([{cells:a.arrays.init(2,null)},{cells:a.arrays.init(2,null)}]),h}createGroupBoxWithOneField(e){return this.createGroupBoxWithFields(e,1)}createGroupBoxWithFields(e,t){e=a.scout.nvl(e,this.session.desktop),t=a.scout.nvl(t,1);let r=[],o=a.scout.create(a.GroupBox,{parent:e});for(let l=0;l<t;l++)r.push(a.scout.create(a.StringField,{parent:o}));return o.setProperty("fields",r),o}createRadioButtonGroup(e,t){e=a.scout.nvl(e,this.session.desktop),t=a.scout.nvl(t,2);let r=[];for(let o=0;o<t;o++)r.push({objectType:a.RadioButton});return a.scout.create(B,{parent:e,fields:r})}createFormWithFields(e,t,r){e=a.scout.nvl(e,this.session.desktop);let o=a.scout.create(a.Form,{parent:e,displayHint:t?"dialog":"view"}),l=this.createGroupBoxWithFields(o,r);return o.setRootGroupBox(l),o}createFieldModel(e,t,r){t=a.scout.nvl(t,this.session.desktop);let o=createSimpleModel(e||"StringField",this.session);return o.parent=t,r&&p().extend(o,r),o}createField(e,t,r){return a.scout.create(e,this.createFieldModel(e,t,r))}createModeSelector(e,t){e=a.scout.nvl(e,this.session.desktop),t=a.scout.nvl(t,2);let r=[];for(let o=0;o<t;o++)r.push({objectType:a.Mode});return a.scout.create(a.ModeSelector,{parent:e,modes:r})}}class q{validateClone(e,t){let r=Array.from(e.cloneProperties).filter(l=>!e.isWidgetProperty(l)),o=Array.from(e.cloneProperties).filter(l=>e.isWidgetProperty(l));r.forEach(l=>{expect(t[l]).toBeDefined(),expect(t[l]).toBe(e[l])}),o.forEach(l=>{expect(t[l]).toBeDefined(),expect(t).toHaveClonedWidgetProperty(e,l)})}}class W extends a.BeanField{_render(){super._render(),this.$container.addClass("test-bean-field")}_renderValue(){this.$field.empty(),this.value&&(this.$field.appendDiv("msg-from").text("Message from "+this.value.sender),this.$field.appendDiv("msg-text").textOrNbsp(this.value.message))}}const d={triggerBlur(s){let e=$.Event("blur",{originalEvent:$.Event("dummy")});s.trigger(e)},triggerRightClick(s){s.trigger($.Event("mousedown",{which:3})),s.trigger($.Event("mouseup",{which:3}))},triggerKeyUp(s,e,t){let r=$.Event("keyup",{originalEvent:$.Event("dummy"),which:e});d.extendEventWithModifier(r,t),s.trigger(r)},triggerKeyDown(s,e,t){let r=$.Event("keydown",{originalEvent:$.Event("dummy"),which:e});d.extendEventWithModifier(r,t),s.trigger(r)},extendEventWithModifier(s,e){return e&&(s.altKey=e.includes("alt"),s.ctrlKey=e.includes("ctrl"),s.shiftKey=e.includes("shift"),s.metaKey=e.includes("meta")),s},triggerMouseEnter(s,e){d.triggerMouseAction(s,"mouseenter",e)},triggerMouseLeave(s,e){d.triggerMouseAction(s,"mouseleave",e)},triggerMouseDown(s,e){d.triggerMouseAction(s,"mousedown",e)},triggerMouseMove(s,e){d.triggerMouseAction(s,"mousemove",e)},triggerMouseDownCapture(s){let e=new MouseEvent("mousedown",{view:window,bubbles:!0,cancelable:!0});s[0].dispatchEvent(e)},triggerKeyDownCapture(s,e,t){d.triggerKeyCapture(s,"keydown",e,t)},triggerKeyUpCapture(s,e,t){d.triggerKeyCapture(s,"keyup",e,t)},triggerKeyInputCapture(s,e,t){d.triggerKeyCapture(s,"keydown",e,t),d.triggerKeyCapture(s,"keyup",e,t)},triggerKeyCapture(s,e,t,r){let o=new KeyboardEvent(e,this.extendEventWithModifier({bubbles:!0,cancelable:!0,which:t,keyCode:t},r));s[0].dispatchEvent(o)},triggerMouseUp(s,e){d.triggerMouseAction(s,"mouseup",e)},triggerMouseAction(s,e,t){let r;t=t||{},t.position||(t.position=s.offset()),t.clicks||(t.clicks=1),t.which||(t.which=1),r=$.Event(e,{which:t.which,originalEvent:$.Event(e,{detail:t.clicks}),pageX:t.position.left,pageY:t.position.top}),t.modifier&&d.extendEventWithModifier(r,t.modifier),s.trigger(r)},triggerContextMenu(s){let e={position:s.offset(),which:3};d.triggerMouseDown(s,e),d.triggerMouseUp(s,e),s.trigger($.Event("contextmenu",{pageX:e.position.left,pageY:e.position.top}))},triggerClick(s,e){e=e||{},e.click||(e.click=1),d.triggerMouseDown(s,e),d.triggerMouseUp(s,e),d.triggerMouseAction(s,"click",e)},triggerDoubleClick(s){d.triggerClick(s),d.triggerClick(s,{click:2}),s.trigger($.Event("dblclick",{originalEvent:$.Event("dummy",{detail:2})}))},triggerImageLoadCapture(s){let e=new Event("load",{bubbles:!0,cancelable:!0});s[0].dispatchEvent(e)},whenAnimationEnd(s){let e=$.Deferred();return s.oneAnimationEnd(()=>{e.resolve()}),e.promise()},selectText(s,e,t,r){let o=r||s.window(!0),l=document.createRange(),n;s[0].nodeType===3?n=s[0]:n=s[0].childNodes[0],l.setStart(n,e),l.setEnd(n,t),o.getSelection().removeAllRanges(),o.getSelection().addRange(l)},whenDocLoad(s){let e=$.Deferred();return s.on("load",()=>{e.resolve(s[0].contentDocument)}),e.promise()}},S={async testProposalFieldInputs(s,e,t,r,o){s.touchMode=t,s.render(),r=$.extend({beforeInput:l=>{},afterInput:l=>{},afterSelectLookupRow:(l,n)=>{},afterAcceptCustomText:l=>{}},r);for(const l of e){const n=S.ensureInput(l),{text:c,lookup:h}=n;if(r.beforeInput(n),h||o===y.EXACT_TEXT){const m=await S.selectLookupRow(s,c,o);r.afterSelectLookupRow(c,m)}else await S.acceptCustomText(s,c),r.afterAcceptCustomText(c);r.afterInput(n)}},ensureInput(s){return typeof s=="string"?{text:s}:s},async acceptCustomText(s,e){if(s.touchMode){const t=await S.openPopup(s);t._field.$field.val(e),t._field.acceptInput(),t.doneAction.doAction()}else s.$field.val(e),await s.acceptInput()},async selectLookupRow(s,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:y.CLICK;const r=await S.openPopup(s),o=s.touchMode?r._field:r.smartField,n=(s.touchMode?r._widget:r.proposalChooser).content,c=n.rows.find(h=>h.cells[0].text===e);switch(t){case y.CLICK:{d.triggerMouseDown(c.$row),d.triggerMouseUp(c.$row);break}case y.ENTER:{n.selectRow(c),d.triggerKeyDownCapture(o.$field,a.keys.ENTER);break}case y.EXACT_TEXT:{o.$field.val(e);let h=r.when("close");return d.triggerKeyDownCapture(o.$field,a.keys.ENTER),await h,o.lookupRow}}return c.lookupRow},async openPopup(s){s.$field.focus(),await s.openPopup(!0);const e=s.popup;return e.animateRemoval=!1,e}};class G extends a.ProposalField{_lookupByTextOrAllDone(e){super._lookupByTextOrAllDone(e)}_getLastSearchText(){return super._getLastSearchText()}acceptInput(e){return this._acceptInputEnabled=!0,super.acceptInput(e)}_acceptInput(e,t,r,o,l){return super._acceptInput(e,t,r,o,l)}}class J extends a.SmartFieldTouchPopup{}var y;(function(s){s[s.CLICK=0]="CLICK",s[s.ENTER=1]="ENTER",s[s.EXACT_TEXT=2]="EXACT_TEXT"})(y||(y={}));class K{session;constructor(e){this.session=e}createTabBoxWith2Tabs(e){return e=p().extend({tabItems:[{objectType:a.TabItem,label:"first"},{objectType:a.TabItem,label:"second"}]},e),this.createTabBox(e)}createTabBoxWith(e){return e=a.scout.nvl(e,[]),this.createTabBox({tabItems:e,selectedTab:e[0]})}createTabBox(e){return e=p().extend({parent:this.session.desktop},e),a.scout.create(a.TabBox,e)}createTabItem(e){return e=p().extend({parent:this.session.desktop},e),a.scout.create(a.TabItem,e)}}class V{session;constructor(e){this.session=e}createModelFixture(e,t,r){return this.createModel(this.createModelNodes(e,t,{expanded:r}))}createModel(e){let t=createSimpleModel("Outline",this.session);return e&&(t.nodes=e),t}createModelNode(e,t,r){return p().extend({id:e||a.ObjectIdProvider.get().createUiSeqId(),text:t},r)}createModelNodes(e,t,r){return this.createModelNodesInternal(e,t)}createModelNodesInternal(e,t,r,o){if(!e)return;let l=[],n;t||(t=0);for(let c=0;c<e;c++)n=c,r&&(n=r.id+"_"+n),l[c]=this.createModelNode(n,"node "+c,o),t>0&&(l[c].childNodes=this.createModelNodesInternal(e,t-1,l[c],o));return l}createOutline(e){let t={parent:this.session.desktop},r=p().extend({},t,e),o=new a.Outline;return o.init(r),o}createOutlineAdapter(e){let t=new a.OutlineAdapter;return t.init(e),t}createOutlineWithOneDetailForm(){let e=this.createModelFixture(3,2,!0),t=this.createOutline(e),r=t.nodes[0];return r.detailForm=new E(this.session).createFormWithOneField({modal:!1}),r.detailFormVisible=!0,t}createOutlineWithOneDetailTable(){let e=this.createModelFixture(3,2,!0),t=this.createOutline(e),r=t.nodes[0];return r.detailTable=new A(this.session).createTableWithOneColumn(),r.detailTableVisible=!0,t}setMobileFlags(e){e.setBreadcrumbStyleActive(!0),e.setToggleBreadcrumbStyleEnabled(!1),e.setCompact(!0),e.setEmbedDetailContent(!0)}}class D extends a.StaticLookupCall{multiline;showText;constructor(){super(),this.multiline=!1,this.showText=!0,this.setDelay(250)}_data(){return[[1,"Foo"],[2,"Bar",1],[3,"Baz",1]]}_dataToLookupRow(e){let t=super._dataToLookupRow(e);return t.cssClass=t.text.toLowerCase(),this.showText?this.multiline&&(t.text="1:"+t.text+`
2:`+t.text):t.text=null,t}}class z extends a.StaticLookupCall{constructor(){super(),this.setDelay(250)}_data(){return[]}}class X extends a.StaticLookupCall{_queryByAll(){this._resolveWithException("QueryByAll failed")}_queryByKey(e){this._resolveWithException("QueryByKey failed")}_queryByRec(e){this._resolveWithException("QueryByRec failed")}_queryByText(e){this._resolveWithException("QueryByText failed")}_resolveWithException(e){this._deferred.resolve(this._createLookupResult([],e))}}class Q extends a.StaticLookupCall{_getByKey(e){return this._deferred=p().Deferred(),queueMicrotask(this._queryByKey.bind(this,e)),this._deferred.promise()}_getAll(){return this._deferred=p().Deferred(),queueMicrotask(this._queryByAll.bind(this)),this._deferred.promise()}_getByText(e){return this._deferred=p().Deferred(),queueMicrotask(this._queryByText.bind(this,e)),this._deferred.promise()}_getByRec(e){return this._deferred=p().Deferred(),queueMicrotask(this._queryByRec.bind(this,e)),this._deferred.promise()}}class Y extends a.StaticLookupCall{_delayDeferred;abort(){this._delayDeferred?.reject({abort:!0}),super.abort()}_getByKey(e){return this._delayDeferred=p().Deferred(),this._delayDeferred.promise().then(()=>super._getByKey(e))}_getAll(){return this._delayDeferred=p().Deferred(),this._delayDeferred.promise().then(()=>super._getAll())}_getByText(e){return this._delayDeferred=p().Deferred(),this._delayDeferred.promise().then(()=>super._getByText(e))}_getByRec(e){return this._delayDeferred=p().Deferred(),this._delayDeferred.promise().then(()=>super._getByRec(e))}resolve(){this._delayDeferred.resolve()}}class Z extends a.StaticLookupCall{constructor(){super(),this.setDelay(250)}_data(){return[[1,"Foo",!0],[2,"Bar",!1],[3,"Baz",null]]}_dataToLookupRow(e){let t=super._dataToLookupRow(e);return t.active=e[2],t}}class ee extends D{constructor(){super(),this.multiline=!1,this.showText=!0,this.setDelay(250)}_dataToLookupRow(e){let t=super._dataToLookupRow(e);return t.additionalTableRowData={column1:t.text+" column1",column2:t.text+" column2"},t}}class te extends a.StaticLookupCall{multiline;showText;constructor(){super(),this.multiline=!1,this.showText=!0,this.setDelay(250)}_data(){return[[100,e.call(this,"English")],[200,e.call(this,"German")],[300,e.call(this,"Italian")],[400,e.call(this,"French")],[500,e.call(this,"Swiss-German")]];function e(t){return this.showText?this.multiline?"1:"+t+`
2:`+t:t:null}}}class re{handlersRegistered(e){let t,r=["keydown","focusin","focusout","hide"],o=0,l=p()._data(e[0],"events"),n=r.length;if(l)for(t=0;t<n;t++)l[r[t]]&&o++;return o===n}}class se{static assertGridData(e,t,r,o,l){expect(l.x).toEqual(e),expect(l.y).toEqual(t),expect(l.w).toEqual(r),expect(l.h).toEqual(o)}}class P extends a.Form{_load(){return super._load()}_save(e){return super._save(e)}_validate(){return super._validate()}_showFormInvalidMessageBox(e){return super._showFormInvalidMessageBox(e)}_createStatusMessageBox(e){return super._createStatusMessageBox(e)}}class oe extends a.FormLifecycle{_validate(){return super._validate()}_createInvalidElementsMessageHtml(e,t){return super._createInvalidElementsMessageHtml(e,t)}}class B extends a.RadioButtonGroup{_setGridColumnCount(e){return super._setGridColumnCount(e)}}const L={toContainEvents:s=>({compare:(e,t)=>{t===void 0&&(t=[]),Array.isArray(t)||(t=[t]);let r={},o=[];if(e)for(let l=0;l<e.events.length;l++)o.push(e.events[l]);r.pass=!0;for(let l=0;l<t.length;l++)Object.getPrototypeOf(t[l])!==Object.prototype&&(t[l]=JSON.parse(JSON.stringify(t[l]))),r.pass=r.pass&&s.contains(o,t[l]);return r.pass||(r.message="Expected actual events "+o+" to be equal to "+t),r}}),toContainEventsExactly:s=>({compare:(e,t)=>{t===void 0&&(t=[]),Array.isArray(t)||(t=[t]);let r={},o=[];if(e)for(let l=0;l<e.events.length;l++)o.push(e.events[l]);r.pass=!0;for(let l=0;l<t.length;l++)Object.getPrototypeOf(t[l])!==Object.prototype&&(t[l]=JSON.parse(JSON.stringify(t[l])));return r.pass=s.equals(o,t),r.pass||(r.message="Expected actual events "+o+" to be equal to "+t),r}}),toContainEventTypesExactly:s=>({compare:(e,t)=>{t===void 0&&(t=[]),Array.isArray(t)||(t=[t]);let r={},o=[];if(e)for(let l=0;l<e.events.length;l++)o.push(e.events[l].type);return r.pass=s.equals(o,t),r.pass||(r.message="Expected actual event types "+o+" to be equal to "+t),r}}),allToHaveClass:(s,e)=>({compare:(t,r)=>{r===void 0&&(r=[]),Array.isArray(r)||(r=[r]),Array.isArray(t)||(t=[t]);let o={pass:t.every(l=>l.hasClass(r))};return o.pass||(o.message="Expected "+t+" all to have "+r+" as classes."),o}}),anyToHaveClass:(s,e)=>({compare:(t,r)=>{r===void 0&&(r=[]),Array.isArray(r)||(r=[r]),Array.isArray(t)||(t=[t]);let o={pass:t.some(l=>l.hasClass(r))};return o.pass||(o.message="Expected any "+t+" to have "+r+" as classes."),o}}),toHaveClonedWidgetProperty:(s,e)=>({compare:(t,r,o)=>{let l=(n,c,h)=>n===c?{pass:!1,message:"widgetProperty '"+o+"' is same on [original: '"+r[o]+"', clone: '"+t[o]+"']. It should be a deep copy."}:n.objectType!==c.objectType?{pass:!1,message:"widgetProperty '"+o+"' has not same object type of clone and original. [original.objectType: '"+n.objectType+"', clonedWidget.objectType: '"+c.objectType+"']."}:c.parent!==t?{pass:!1,message:"widgetProperty '"+o+"' has a wrong parent in clone (widget parent and clone should be same). [clone: '"+t+"', widget.parent: '"+c.parent+"']."}:n!==c.cloneOf?{pass:!1,message:"widgetProperty '"+o+"' cloneOf of clone is not set correctly. [original: '"+n+"', clone.cloneOf: '"+c.cloneOf+"']."}:{pass:!0};if(r[o]===t[o])return{pass:!1,message:"widgetProperty '"+o+"' is same on [original: '"+r[o]+"', clone: '"+t[o]+"']. It should be a deep copy."};if(Array.isArray(r[o])){if(!Array.isArray(t[o]))return{pass:!1,message:"widgetProperty '"+o+"' is not an array [original: '"+r[o]+"', clone: '"+t[o]+"']. It should be a deep copy."};for(let n=0;n<r[o].length;n++){let c=l(r[o][n],t[o][n],o);if(!c.pass)return c}}return{pass:!0}}})};class R extends a.Table{_resizeToFit(e,t,r){super._resizeToFit(e,t,r)}_calculateCurrentViewRange(){return super._calculateCurrentViewRange()}_calculateViewRangeForRowIndex(e){return super._calculateViewRangeForRowIndex(e)}_unwrapText(e){return super._unwrapText(e)}_selectedRowsToText(){return super._selectedRowsToText()}_showCellError(e,t,r){super._showCellError(e,t,r)}_columnAtX(e){return super._columnAtX(e)}_sort(e){return super._sort(e)}_sortImpl(e){super._sortImpl(e)}}class N extends a.TableAdapter{_onRowsDeleted(e){super._onRowsDeleted(e)}_onRowsSelected(e){super._onRowsSelected(e)}_onRowsChecked(e){super._onRowsChecked(e)}_onRowsExpanded(e){super._onRowsExpanded(e)}_sendFilter(e){super._sendFilter(e)}}class j extends a.Tree{_initNodes(e,t){super._initNodes(e,t)}_calculateCurrentViewRange(){return super._calculateCurrentViewRange()}_expandAllParentNodes(e){super._expandAllParentNodes(e)}_renderViewRangeForNode(e){super._renderViewRangeForNode(e)}_updateNodePaddingsLeft(e){super._updateNodePaddingsLeft(e)}_onScroll(e){super._onScroll(e)}}class O{static register(){a.uiNotifications.tearDown(),a.ObjectFactory.get().register(a.UiNotificationSystem,()=>new x)}static unregister(){a.uiNotifications.tearDown(),a.ObjectFactory.get().unregister(a.UiNotificationSystem)}static putNotification(e,t){t=t||a.System.MAIN_SYSTEM;let r=a.uiNotifications.systems.get(t);if(!(r instanceof x))throw new Error("You need to register the local system first using UiNotificationsMock.registerLocalSystem");r.put(e)}}class x extends a.UiNotificationSystem{whenSubscriptionStart(e){return p().resolvedPromise(e)}updatePoller(){}put(e){super._dispatch([p().extend({id:"1",creationTime:new Date,nodeId:"node1"},e)])}}const ae=C;a.ObjectFactory.get().registerNamespace("scout",C);var pe=u.ActiveDummyLookupCall,de=u.CloneSpecHelper,me=u.ColumnDescriptorDummyLookupCall,ge=u.DelayedStaticLookupCall,he=u.DummyLookupCall,_e=u.EmptyDummyLookupCall,fe=u.ErroneousLookupCall,ye=u.FocusManagerSpecHelper,be=u.FormSpecHelper,Se=u.GroupBoxSpecHelper,Te=u.JQueryTesting,we=u.JasmineScout,Ce=u.JasmineScoutUtil,xe=u.LanguageDummyLookupCall,ve=u.LocalUiNotificationSystem,Fe=u.LocaleSpecHelper,Me=u.LookupRowSelectionStrategy,ke=u.MenuSpecHelper,Ae=u.MicrotaskStaticLookupCall,Ee=u.OutlineSpecHelper,De=u.SpecForm,Pe=u.SpecLifecycle,Be=u.SpecProposalField,Le=u.SpecRadioButtonGroup,Re=u.SpecSmartFieldTouchPopup,Ne=u.SpecTable,je=u.SpecTableAdapter,Oe=u.SpecTree,He=u.SpecUiPreferencesStore,Ie=u.TabBoxSpecHelper,Ue=u.TableSpecHelper,qe=u.TestBeanField,We=u.TestingApp,Ge=u.TreeSpecHelper,Je=u.UiNotificationsMock,$e=u.accessSpecHelper,Ke=u.default,Ve=u.jasmineScoutMatchers,ze=u.proposalFieldSpecHelper;export{pe as ActiveDummyLookupCall,de as CloneSpecHelper,me as ColumnDescriptorDummyLookupCall,ge as DelayedStaticLookupCall,he as DummyLookupCall,_e as EmptyDummyLookupCall,fe as ErroneousLookupCall,ye as FocusManagerSpecHelper,be as FormSpecHelper,Se as GroupBoxSpecHelper,Te as JQueryTesting,we as JasmineScout,Ce as JasmineScoutUtil,xe as LanguageDummyLookupCall,ve as LocalUiNotificationSystem,Fe as LocaleSpecHelper,Me as LookupRowSelectionStrategy,ke as MenuSpecHelper,Ae as MicrotaskStaticLookupCall,Ee as OutlineSpecHelper,De as SpecForm,Pe as SpecLifecycle,Be as SpecProposalField,Le as SpecRadioButtonGroup,Re as SpecSmartFieldTouchPopup,Ne as SpecTable,je as SpecTableAdapter,Oe as SpecTree,He as SpecUiPreferencesStore,Ie as TabBoxSpecHelper,Ue as TableSpecHelper,qe as TestBeanField,We as TestingApp,Ge as TreeSpecHelper,Je as UiNotificationsMock,$e as accessSpecHelper,Ke as default,Ve as jasmineScoutMatchers,ze as proposalFieldSpecHelper};
//# sourceMappingURL=eclipse-scout-testing.esm-9b780eb2580053a2bac4.min.js.map