extjs-rails 4.1.0.alpha1
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.
- data/.gitignore +18 -0
- data/Gemfile +4 -0
- data/LICENSE +36 -0
- data/README.md +29 -0
- data/Rakefile +2 -0
- data/app/assets/javascripts/extjs-rails/extjs-rails.js +1 -0
- data/app/assets/javascripts/extjs-rails/index.js.erb +9 -0
- data/app/assets/javascripts/extjs-rails/sdk.jsb3 +2017 -0
- data/app/assets/javascripts/extjs-rails/src/AbstractComponent.js +3290 -0
- data/app/assets/javascripts/extjs-rails/src/AbstractManager.js +144 -0
- data/app/assets/javascripts/extjs-rails/src/AbstractPlugin.js +72 -0
- data/app/assets/javascripts/extjs-rails/src/Action.js +276 -0
- data/app/assets/javascripts/extjs-rails/src/Ajax.js +99 -0
- data/app/assets/javascripts/extjs-rails/src/Component.js +1344 -0
- data/app/assets/javascripts/extjs-rails/src/ComponentLoader.js +202 -0
- data/app/assets/javascripts/extjs-rails/src/ComponentManager.js +47 -0
- data/app/assets/javascripts/extjs-rails/src/ComponentQuery.js +521 -0
- data/app/assets/javascripts/extjs-rails/src/Editor.js +494 -0
- data/app/assets/javascripts/extjs-rails/src/ElementLoader.js +404 -0
- data/app/assets/javascripts/extjs-rails/src/FocusManager.js +712 -0
- data/app/assets/javascripts/extjs-rails/src/Img.js +111 -0
- data/app/assets/javascripts/extjs-rails/src/Layer.js +543 -0
- data/app/assets/javascripts/extjs-rails/src/LoadMask.js +432 -0
- data/app/assets/javascripts/extjs-rails/src/ModelManager.js +186 -0
- data/app/assets/javascripts/extjs-rails/src/PluginManager.js +110 -0
- data/app/assets/javascripts/extjs-rails/src/ProgressBar.js +336 -0
- data/app/assets/javascripts/extjs-rails/src/Shadow.js +233 -0
- data/app/assets/javascripts/extjs-rails/src/ShadowPool.js +43 -0
- data/app/assets/javascripts/extjs-rails/src/Template.js +331 -0
- data/app/assets/javascripts/extjs-rails/src/XTemplate.js +365 -0
- data/app/assets/javascripts/extjs-rails/src/XTemplateCompiler.js +450 -0
- data/app/assets/javascripts/extjs-rails/src/XTemplateParser.js +249 -0
- data/app/assets/javascripts/extjs-rails/src/ZIndexManager.js +519 -0
- data/app/assets/javascripts/extjs-rails/src/app/Application.js +271 -0
- data/app/assets/javascripts/extjs-rails/src/app/Controller.js +458 -0
- data/app/assets/javascripts/extjs-rails/src/app/EventBus.js +112 -0
- data/app/assets/javascripts/extjs-rails/src/button/Button.js +1483 -0
- data/app/assets/javascripts/extjs-rails/src/button/Cycle.js +215 -0
- data/app/assets/javascripts/extjs-rails/src/button/Split.js +99 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Callout.js +140 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Chart.js +966 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Highlight.js +172 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Label.js +241 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Legend.js +474 -0
- data/app/assets/javascripts/extjs-rails/src/chart/LegendItem.js +217 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Mask.js +230 -0
- data/app/assets/javascripts/extjs-rails/src/chart/MaskLayer.js +48 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Navigation.js +79 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Shape.js +106 -0
- data/app/assets/javascripts/extjs-rails/src/chart/Tip.js +98 -0
- data/app/assets/javascripts/extjs-rails/src/chart/TipSurface.js +42 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Abstract.js +73 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Axis.js +961 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Category.js +130 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Gauge.js +203 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Numeric.js +235 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Radial.js +204 -0
- data/app/assets/javascripts/extjs-rails/src/chart/axis/Time.js +135 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Area.js +803 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Bar.js +853 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Cartesian.js +328 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Column.js +104 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Gauge.js +490 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Line.js +1104 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Pie.js +1072 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Radar.js +440 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Scatter.js +668 -0
- data/app/assets/javascripts/extjs-rails/src/chart/series/Series.js +443 -0
- data/app/assets/javascripts/extjs-rails/src/chart/theme/Base.js +175 -0
- data/app/assets/javascripts/extjs-rails/src/chart/theme/Theme.js +253 -0
- data/app/assets/javascripts/extjs-rails/src/container/AbstractContainer.js +1062 -0
- data/app/assets/javascripts/extjs-rails/src/container/ButtonGroup.js +143 -0
- data/app/assets/javascripts/extjs-rails/src/container/Container.js +212 -0
- data/app/assets/javascripts/extjs-rails/src/container/DockingContainer.js +265 -0
- data/app/assets/javascripts/extjs-rails/src/container/Viewport.js +184 -0
- data/app/assets/javascripts/extjs-rails/src/core/dom/Element.form.js +50 -0
- data/app/assets/javascripts/extjs-rails/src/core/dom/Element.static-more.js +159 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/index.html +321 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/index.js +6 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/CTO.js +25 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/CoolGuy.js +20 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/Developer.js +43 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/Gun.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/HumanResource.js +23 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/Musician.js +20 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/Person.js +50 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/ability/CanComposeSongs.js +9 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/ability/CanPlayGuitar.js +9 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/ability/CanSing.js +18 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/A.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/B.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/C.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/D.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/deadlock/E.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/notdeadlock/A.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/notdeadlock/B.js +4 -0
- data/app/assets/javascripts/extjs-rails/src/core/examples/src/Sample/notdeadlock/C.js +3 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/EventManager.js +1167 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/EventObject.js +883 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/Ext-more.js +1283 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/Ext.js +736 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/Support.js +662 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/class/Base.js +1085 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/class/Class.js +676 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/class/ClassManager.js +1591 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/class/Loader.js +1423 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.alignment.js +173 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.insertion.js +193 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.js +681 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.position.js +356 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.static.js +474 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.style.js +851 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractElement.traversal.js +180 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractHelper.js +291 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/AbstractQuery.js +72 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/CompositeElement.js +75 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/CompositeElementLite.js +436 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/dom/DomQuery-aria.js +1049 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/env/Browser.js +186 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/env/FeatureDetector.js +274 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/env/OS.js +141 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Array.js +1205 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Date.js +1463 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Error.js +326 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Function.js +485 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Number.js +175 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/Object.js +606 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/lang/String.js +333 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/misc/JSON.js +236 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/perf/Accumulator.js +244 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/perf/Monitor.js +197 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/util/DelayedTask.js +71 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/util/Event.js +215 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/util/Format.js +551 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/util/TaskManager.js +417 -0
- data/app/assets/javascripts/extjs-rails/src/core/src/version/Version.js +364 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/README.MD +91 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/bootstrap.js +39 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/build/build-data.js +34 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/build/build.sh +2 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/data.js +27 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/index.html +15 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom.html +40 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/extjs-api.js +12 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/platform-api.js +134 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/sanity.js +4 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/touch-api-out.js +128 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/dom/touch-api.js +89 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/other_specs/env/Environment.js +357 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/resources/APITest.js +37 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/resources/jsb3.js +14 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/resources/test-setup.js +137 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/EventManager.js +629 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/Ext-mess.backup +198 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/Ext-more.js +520 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/Ext.js +1550 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/Support.js +250 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/class/Base.js +47 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/class/Class.js +561 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/class/ClassManager.js +555 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/CompositeElementLite.js +409 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/DomHelper.js +444 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.insertion.js +342 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.js +731 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.static.js +201 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.style.js +118 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/dom/Element.traversal.js +336 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Array.js +1229 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Date.js +697 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Error.js +277 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Function.js +536 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Number.js +323 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/Object.js +591 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/lang/String.js +451 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/misc/JSON.js +252 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/util/Format.js +521 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/spec/version/Version.js +148 -0
- data/app/assets/javascripts/extjs-rails/src/core/test/unit/specs.html +19 -0
- data/app/assets/javascripts/extjs-rails/src/data/AbstractStore.js +887 -0
- data/app/assets/javascripts/extjs-rails/src/data/ArrayStore.js +74 -0
- data/app/assets/javascripts/extjs-rails/src/data/Batch.js +236 -0
- data/app/assets/javascripts/extjs-rails/src/data/BufferStore.js +13 -0
- data/app/assets/javascripts/extjs-rails/src/data/Connection.js +969 -0
- data/app/assets/javascripts/extjs-rails/src/data/DirectStore.js +50 -0
- data/app/assets/javascripts/extjs-rails/src/data/Errors.js +52 -0
- data/app/assets/javascripts/extjs-rails/src/data/Field.js +341 -0
- data/app/assets/javascripts/extjs-rails/src/data/IdGenerator.js +198 -0
- data/app/assets/javascripts/extjs-rails/src/data/JsonP.js +253 -0
- data/app/assets/javascripts/extjs-rails/src/data/JsonPStore.js +51 -0
- data/app/assets/javascripts/extjs-rails/src/data/JsonStore.js +60 -0
- data/app/assets/javascripts/extjs-rails/src/data/Model.js +1673 -0
- data/app/assets/javascripts/extjs-rails/src/data/NodeInterface.js +1294 -0
- data/app/assets/javascripts/extjs-rails/src/data/NodeStore.js +254 -0
- data/app/assets/javascripts/extjs-rails/src/data/Operation.js +331 -0
- data/app/assets/javascripts/extjs-rails/src/data/Request.js +40 -0
- data/app/assets/javascripts/extjs-rails/src/data/ResultSet.js +56 -0
- data/app/assets/javascripts/extjs-rails/src/data/SequentialIdGenerator.js +61 -0
- data/app/assets/javascripts/extjs-rails/src/data/SortTypes.js +125 -0
- data/app/assets/javascripts/extjs-rails/src/data/Store.js +2609 -0
- data/app/assets/javascripts/extjs-rails/src/data/StoreManager.js +156 -0
- data/app/assets/javascripts/extjs-rails/src/data/Tree.js +290 -0
- data/app/assets/javascripts/extjs-rails/src/data/TreeStore.js +655 -0
- data/app/assets/javascripts/extjs-rails/src/data/Types.js +190 -0
- data/app/assets/javascripts/extjs-rails/src/data/UuidGenerator.js +215 -0
- data/app/assets/javascripts/extjs-rails/src/data/XmlStore.js +76 -0
- data/app/assets/javascripts/extjs-rails/src/data/association/Association.js +243 -0
- data/app/assets/javascripts/extjs-rails/src/data/association/BelongsTo.js +291 -0
- data/app/assets/javascripts/extjs-rails/src/data/association/HasMany.js +289 -0
- data/app/assets/javascripts/extjs-rails/src/data/association/HasOne.js +304 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Ajax.js +282 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Client.js +21 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Direct.js +181 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/JsonP.js +313 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/LocalStorage.js +69 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Memory.js +156 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Proxy.js +433 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Rest.js +173 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/Server.js +460 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/SessionStorage.js +39 -0
- data/app/assets/javascripts/extjs-rails/src/data/proxy/WebStorage.js +546 -0
- data/app/assets/javascripts/extjs-rails/src/data/reader/Array.js +68 -0
- data/app/assets/javascripts/extjs-rails/src/data/reader/Json.js +383 -0
- data/app/assets/javascripts/extjs-rails/src/data/reader/Reader.js +735 -0
- data/app/assets/javascripts/extjs-rails/src/data/reader/Xml.js +292 -0
- data/app/assets/javascripts/extjs-rails/src/data/validations.js +149 -0
- data/app/assets/javascripts/extjs-rails/src/data/writer/Json.js +81 -0
- data/app/assets/javascripts/extjs-rails/src/data/writer/Writer.js +147 -0
- data/app/assets/javascripts/extjs-rails/src/data/writer/Xml.js +88 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DD.js +300 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DDProxy.js +204 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DDTarget.js +171 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragDrop.js +1101 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragDropManager.js +1264 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragSource.js +392 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragTracker.js +562 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DragZone.js +137 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DropTarget.js +118 -0
- data/app/assets/javascripts/extjs-rails/src/dd/DropZone.js +254 -0
- data/app/assets/javascripts/extjs-rails/src/dd/Registry.js +117 -0
- data/app/assets/javascripts/extjs-rails/src/dd/ScrollManager.js +218 -0
- data/app/assets/javascripts/extjs-rails/src/dd/StatusProxy.js +179 -0
- data/app/assets/javascripts/extjs-rails/src/diag/layout/Context.js +523 -0
- data/app/assets/javascripts/extjs-rails/src/diag/layout/ContextItem.js +179 -0
- data/app/assets/javascripts/extjs-rails/src/direct/Event.js +35 -0
- data/app/assets/javascripts/extjs-rails/src/direct/ExceptionEvent.js +16 -0
- data/app/assets/javascripts/extjs-rails/src/direct/JsonProvider.js +82 -0
- data/app/assets/javascripts/extjs-rails/src/direct/Manager.js +263 -0
- data/app/assets/javascripts/extjs-rails/src/direct/PollingProvider.js +156 -0
- data/app/assets/javascripts/extjs-rails/src/direct/Provider.js +96 -0
- data/app/assets/javascripts/extjs-rails/src/direct/RemotingEvent.js +24 -0
- data/app/assets/javascripts/extjs-rails/src/direct/RemotingMethod.js +100 -0
- data/app/assets/javascripts/extjs-rails/src/direct/RemotingProvider.js +510 -0
- data/app/assets/javascripts/extjs-rails/src/direct/Transaction.js +41 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.alignment.js +378 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.anim.js +962 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.dd.js +40 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.fx.js +194 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.js +1407 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.position.js +501 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.scroll.js +214 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.style.js +792 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Element.traversal.js +8 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Helper.js +466 -0
- data/app/assets/javascripts/extjs-rails/src/dom/Query.js +1067 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Color.js +303 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Component.js +245 -0
- data/app/assets/javascripts/extjs-rails/src/draw/CompositeSprite.js +299 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Draw.js +1217 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Matrix.js +183 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Sprite.js +554 -0
- data/app/assets/javascripts/extjs-rails/src/draw/SpriteDD.js +87 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Surface.js +1001 -0
- data/app/assets/javascripts/extjs-rails/src/draw/Text.js +175 -0
- data/app/assets/javascripts/extjs-rails/src/draw/engine/ImageExporter.js +106 -0
- data/app/assets/javascripts/extjs-rails/src/draw/engine/Svg.js +734 -0
- data/app/assets/javascripts/extjs-rails/src/draw/engine/SvgExporter.js +280 -0
- data/app/assets/javascripts/extjs-rails/src/draw/engine/Vml.js +916 -0
- data/app/assets/javascripts/extjs-rails/src/flash/Component.js +248 -0
- data/app/assets/javascripts/extjs-rails/src/form/Basic.js +1018 -0
- data/app/assets/javascripts/extjs-rails/src/form/CheckboxGroup.js +441 -0
- data/app/assets/javascripts/extjs-rails/src/form/CheckboxManager.js +26 -0
- data/app/assets/javascripts/extjs-rails/src/form/FieldAncestor.js +210 -0
- data/app/assets/javascripts/extjs-rails/src/form/FieldContainer.js +290 -0
- data/app/assets/javascripts/extjs-rails/src/form/FieldSet.js +506 -0
- data/app/assets/javascripts/extjs-rails/src/form/Label.js +110 -0
- data/app/assets/javascripts/extjs-rails/src/form/Labelable.js +764 -0
- data/app/assets/javascripts/extjs-rails/src/form/Panel.js +335 -0
- data/app/assets/javascripts/extjs-rails/src/form/RadioGroup.js +124 -0
- data/app/assets/javascripts/extjs-rails/src/form/RadioManager.js +26 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/Action.js +307 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/DirectLoad.js +107 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/DirectSubmit.js +119 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/Load.js +120 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/StandardSubmit.js +34 -0
- data/app/assets/javascripts/extjs-rails/src/form/action/Submit.js +257 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Base.js +813 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Checkbox.js +505 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/ComboBox.js +1427 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Date.js +578 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Display.js +155 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Field.js +430 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/File.js +265 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Hidden.js +75 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/HtmlEditor.js +1439 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Number.js +380 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Picker.js +321 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Radio.js +279 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Spinner.js +321 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Text.js +727 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/TextArea.js +228 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Time.js +459 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/Trigger.js +469 -0
- data/app/assets/javascripts/extjs-rails/src/form/field/VTypes.js +172 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Anim.js +472 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Animator.js +410 -0
- data/app/assets/javascripts/extjs-rails/src/fx/CubicBezier.js +77 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Easing.js +136 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Manager.js +353 -0
- data/app/assets/javascripts/extjs-rails/src/fx/PropertyHandler.js +381 -0
- data/app/assets/javascripts/extjs-rails/src/fx/Queue.js +123 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/Component.js +118 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/CompositeElement.js +46 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/CompositeElementCSS.js +22 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/CompositeSprite.js +34 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/Element.js +83 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/ElementCSS.js +77 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/Sprite.js +128 -0
- data/app/assets/javascripts/extjs-rails/src/fx/target/Target.js +36 -0
- data/app/assets/javascripts/extjs-rails/src/grid/CellEditor.js +172 -0
- data/app/assets/javascripts/extjs-rails/src/grid/ColumnComponentLayout.js +34 -0
- data/app/assets/javascripts/extjs-rails/src/grid/ColumnLayout.js +201 -0
- data/app/assets/javascripts/extjs-rails/src/grid/Lockable.js +863 -0
- data/app/assets/javascripts/extjs-rails/src/grid/LockingView.js +169 -0
- data/app/assets/javascripts/extjs-rails/src/grid/PagingScroller.js +539 -0
- data/app/assets/javascripts/extjs-rails/src/grid/Panel.js +393 -0
- data/app/assets/javascripts/extjs-rails/src/grid/RowEditor.js +731 -0
- data/app/assets/javascripts/extjs-rails/src/grid/RowNumberer.js +76 -0
- data/app/assets/javascripts/extjs-rails/src/grid/Scroller.js +5 -0
- data/app/assets/javascripts/extjs-rails/src/grid/View.js +44 -0
- data/app/assets/javascripts/extjs-rails/src/grid/ViewDropZone.js +41 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Action.js +318 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Boolean.js +82 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Column.js +835 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Date.js +63 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Number.js +52 -0
- data/app/assets/javascripts/extjs-rails/src/grid/column/Template.js +58 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/AbstractSummary.js +154 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/Chunking.js +77 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/Feature.js +158 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/Grouping.js +822 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/GroupingSummary.js +243 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/RowBody.js +116 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/RowWrap.js +120 -0
- data/app/assets/javascripts/extjs-rails/src/grid/feature/Summary.js +167 -0
- data/app/assets/javascripts/extjs-rails/src/grid/header/Container.js +965 -0
- data/app/assets/javascripts/extjs-rails/src/grid/header/DragZone.js +69 -0
- data/app/assets/javascripts/extjs-rails/src/grid/header/DropZone.js +265 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/CellEditing.js +453 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/DragDrop.js +254 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/Editing.js +561 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/HeaderReorderer.js +49 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/HeaderResizer.js +292 -0
- data/app/assets/javascripts/extjs-rails/src/grid/plugin/RowEditing.js +339 -0
- data/app/assets/javascripts/extjs-rails/src/grid/property/Grid.js +351 -0
- data/app/assets/javascripts/extjs-rails/src/grid/property/HeaderContainer.js +109 -0
- data/app/assets/javascripts/extjs-rails/src/grid/property/Property.js +36 -0
- data/app/assets/javascripts/extjs-rails/src/grid/property/Store.js +141 -0
- data/app/assets/javascripts/extjs-rails/src/layout/ClassList.js +90 -0
- data/app/assets/javascripts/extjs-rails/src/layout/Context.js +1232 -0
- data/app/assets/javascripts/extjs-rails/src/layout/ContextItem.js +1470 -0
- data/app/assets/javascripts/extjs-rails/src/layout/Layout.js +761 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Auto.js +220 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Body.js +80 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/BoundList.js +95 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Button.js +261 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Component.js +427 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Dock.js +1132 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Draw.js +79 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/FieldSet.js +62 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/ProgressBar.js +54 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/Tab.js +23 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/ComboBox.js +52 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/Field.js +372 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/FieldContainer.js +48 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/HtmlEditor.js +54 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/Slider.js +58 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/Text.js +75 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/TextArea.js +51 -0
- data/app/assets/javascripts/extjs-rails/src/layout/component/field/Trigger.js +132 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Absolute.js +121 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Accordion.js +308 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Anchor.js +403 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Auto.js +70 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Border-old-js +1079 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Border.js +816 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Box.js +929 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Card.js +361 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/CheckboxGroup.js +376 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Column.js +234 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Container.js +961 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Editor.js +74 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Fit.js +287 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Form.js +157 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/HBox.js +134 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/Table.js +412 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/VBox.js +139 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/boxOverflow/Menu.js +365 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/boxOverflow/None.js +83 -0
- data/app/assets/javascripts/extjs-rails/src/layout/container/boxOverflow/Scroller.js +475 -0
- data/app/assets/javascripts/extjs-rails/src/menu/CheckItem.js +169 -0
- data/app/assets/javascripts/extjs-rails/src/menu/ColorPicker.js +110 -0
- data/app/assets/javascripts/extjs-rails/src/menu/DatePicker.js +100 -0
- data/app/assets/javascripts/extjs-rails/src/menu/Item.js +553 -0
- data/app/assets/javascripts/extjs-rails/src/menu/KeyNav.js +134 -0
- data/app/assets/javascripts/extjs-rails/src/menu/Manager.js +219 -0
- data/app/assets/javascripts/extjs-rails/src/menu/Menu.js +579 -0
- data/app/assets/javascripts/extjs-rails/src/menu/Separator.js +126 -0
- data/app/assets/javascripts/extjs-rails/src/panel/AbstractPanel.js +323 -0
- data/app/assets/javascripts/extjs-rails/src/panel/DD.js +99 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Header.js +518 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Panel.js +2150 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Proxy.js +131 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Table.js +1018 -0
- data/app/assets/javascripts/extjs-rails/src/panel/Tool.js +304 -0
- data/app/assets/javascripts/extjs-rails/src/picker/Color.js +219 -0
- data/app/assets/javascripts/extjs-rails/src/picker/Date.js +1140 -0
- data/app/assets/javascripts/extjs-rails/src/picker/Month.js +490 -0
- data/app/assets/javascripts/extjs-rails/src/picker/Time.js +165 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/BorderSplitter.js +22 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/BorderSplitterTracker.js +210 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/Handle.js +29 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/ResizeTracker.js +346 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/Resizer.js +477 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/Splitter.js +242 -0
- data/app/assets/javascripts/extjs-rails/src/resizer/SplitterTracker.js +230 -0
- data/app/assets/javascripts/extjs-rails/src/selection/CellModel.js +395 -0
- data/app/assets/javascripts/extjs-rails/src/selection/CheckboxModel.js +234 -0
- data/app/assets/javascripts/extjs-rails/src/selection/DataViewModel.js +160 -0
- data/app/assets/javascripts/extjs-rails/src/selection/Model.js +646 -0
- data/app/assets/javascripts/extjs-rails/src/selection/RowModel.js +499 -0
- data/app/assets/javascripts/extjs-rails/src/selection/TreeModel.js +78 -0
- data/app/assets/javascripts/extjs-rails/src/slider/Multi.js +835 -0
- data/app/assets/javascripts/extjs-rails/src/slider/Single.js +56 -0
- data/app/assets/javascripts/extjs-rails/src/slider/Thumb.js +259 -0
- data/app/assets/javascripts/extjs-rails/src/slider/Tip.js +130 -0
- data/app/assets/javascripts/extjs-rails/src/state/CookieProvider.js +120 -0
- data/app/assets/javascripts/extjs-rails/src/state/LocalStorageProvider.js +72 -0
- data/app/assets/javascripts/extjs-rails/src/state/Manager.js +70 -0
- data/app/assets/javascripts/extjs-rails/src/state/Provider.js +182 -0
- data/app/assets/javascripts/extjs-rails/src/state/Stateful.js +364 -0
- data/app/assets/javascripts/extjs-rails/src/tab/Bar.js +258 -0
- data/app/assets/javascripts/extjs-rails/src/tab/Panel.js +654 -0
- data/app/assets/javascripts/extjs-rails/src/tab/Tab.js +358 -0
- data/app/assets/javascripts/extjs-rails/src/tail.js +10 -0
- data/app/assets/javascripts/extjs-rails/src/tip/QuickTip.js +335 -0
- data/app/assets/javascripts/extjs-rails/src/tip/QuickTipManager.js +239 -0
- data/app/assets/javascripts/extjs-rails/src/tip/Tip.js +160 -0
- data/app/assets/javascripts/extjs-rails/src/tip/ToolTip.js +691 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Fill.js +28 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Item.js +16 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Paging.js +600 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Separator.js +23 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Spacer.js +33 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/TextItem.js +57 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Toolbar-legacy.js +123 -0
- data/app/assets/javascripts/extjs-rails/src/toolbar/Toolbar.js +447 -0
- data/app/assets/javascripts/extjs-rails/src/tree/Column.js +90 -0
- data/app/assets/javascripts/extjs-rails/src/tree/Panel.js +505 -0
- data/app/assets/javascripts/extjs-rails/src/tree/View.js +658 -0
- data/app/assets/javascripts/extjs-rails/src/tree/ViewDragZone.js +49 -0
- data/app/assets/javascripts/extjs-rails/src/tree/ViewDropZone.js +287 -0
- data/app/assets/javascripts/extjs-rails/src/tree/plugin/TreeViewDragDrop.js +244 -0
- data/app/assets/javascripts/extjs-rails/src/util/AbstractMixedCollection.js +772 -0
- data/app/assets/javascripts/extjs-rails/src/util/Animate.js +426 -0
- data/app/assets/javascripts/extjs-rails/src/util/Bindable.js +102 -0
- data/app/assets/javascripts/extjs-rails/src/util/CSS.js +185 -0
- data/app/assets/javascripts/extjs-rails/src/util/ClickRepeater.js +238 -0
- data/app/assets/javascripts/extjs-rails/src/util/ComponentDragger.js +126 -0
- data/app/assets/javascripts/extjs-rails/src/util/Cookies.js +91 -0
- data/app/assets/javascripts/extjs-rails/src/util/ElementContainer.js +293 -0
- data/app/assets/javascripts/extjs-rails/src/util/Filter.js +159 -0
- data/app/assets/javascripts/extjs-rails/src/util/Floating.js +321 -0
- data/app/assets/javascripts/extjs-rails/src/util/Grouper.js +26 -0
- data/app/assets/javascripts/extjs-rails/src/util/HashMap.js +356 -0
- data/app/assets/javascripts/extjs-rails/src/util/History.js +285 -0
- data/app/assets/javascripts/extjs-rails/src/util/Inflector.js +297 -0
- data/app/assets/javascripts/extjs-rails/src/util/KeyMap.js +427 -0
- data/app/assets/javascripts/extjs-rails/src/util/KeyNav.js +239 -0
- data/app/assets/javascripts/extjs-rails/src/util/LruCache.js +257 -0
- data/app/assets/javascripts/extjs-rails/src/util/Memento.js +131 -0
- data/app/assets/javascripts/extjs-rails/src/util/MixedCollection.js +239 -0
- data/app/assets/javascripts/extjs-rails/src/util/Observable.js +1003 -0
- data/app/assets/javascripts/extjs-rails/src/util/Offset.js +60 -0
- data/app/assets/javascripts/extjs-rails/src/util/Point.js +93 -0
- data/app/assets/javascripts/extjs-rails/src/util/ProtoElement.js +205 -0
- data/app/assets/javascripts/extjs-rails/src/util/Queue.js +76 -0
- data/app/assets/javascripts/extjs-rails/src/util/Region.js +388 -0
- data/app/assets/javascripts/extjs-rails/src/util/Renderable.js +1079 -0
- data/app/assets/javascripts/extjs-rails/src/util/Sortable.js +248 -0
- data/app/assets/javascripts/extjs-rails/src/util/Sorter.js +179 -0
- data/app/assets/javascripts/extjs-rails/src/util/TextMetrics.js +148 -0
- data/app/assets/javascripts/extjs-rails/src/view/AbstractView.js +1103 -0
- data/app/assets/javascripts/extjs-rails/src/view/BoundList.js +207 -0
- data/app/assets/javascripts/extjs-rails/src/view/BoundListKeyNav.js +92 -0
- data/app/assets/javascripts/extjs-rails/src/view/DragZone.js +106 -0
- data/app/assets/javascripts/extjs-rails/src/view/DropZone.js +240 -0
- data/app/assets/javascripts/extjs-rails/src/view/Table.js +1229 -0
- data/app/assets/javascripts/extjs-rails/src/view/TableChunker.js +139 -0
- data/app/assets/javascripts/extjs-rails/src/view/View.js +636 -0
- data/app/assets/javascripts/extjs-rails/src/window/MessageBox.js +880 -0
- data/app/assets/javascripts/extjs-rails/src/window/Window-legacy.js +56 -0
- data/app/assets/javascripts/extjs-rails/src/window/Window.js +793 -0
- data/extjs-rails.gemspec +24 -0
- data/lib/extjs-rails.rb +7 -0
- data/lib/extjs-rails/engine.rb +7 -0
- data/lib/extjs-rails/version.rb +5 -0
- metadata +660 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility class for setting/reading values from browser cookies.
|
|
3
|
+
* Values can be written using the {@link #set} method.
|
|
4
|
+
* Values can be read using the {@link #get} method.
|
|
5
|
+
* A cookie can be invalidated on the client machine using the {@link #clear} method.
|
|
6
|
+
*/
|
|
7
|
+
Ext.define('Ext.util.Cookies', {
|
|
8
|
+
singleton: true,
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Creates a cookie with the specified name and value. Additional settings for the cookie may be optionally specified
|
|
12
|
+
* (for example: expiration, access restriction, SSL).
|
|
13
|
+
* @param {String} name The name of the cookie to set.
|
|
14
|
+
* @param {Object} value The value to set for the cookie.
|
|
15
|
+
* @param {Object} [expires] Specify an expiration date the cookie is to persist until. Note that the specified Date
|
|
16
|
+
* object will be converted to Greenwich Mean Time (GMT).
|
|
17
|
+
* @param {String} [path] Setting a path on the cookie restricts access to pages that match that path. Defaults to all
|
|
18
|
+
* pages ('/').
|
|
19
|
+
* @param {String} [domain] Setting a domain restricts access to pages on a given domain (typically used to allow
|
|
20
|
+
* cookie access across subdomains). For example, "sencha.com" will create a cookie that can be accessed from any
|
|
21
|
+
* subdomain of sencha.com, including www.sencha.com, support.sencha.com, etc.
|
|
22
|
+
* @param {Boolean} [secure] Specify true to indicate that the cookie should only be accessible via SSL on a page
|
|
23
|
+
* using the HTTPS protocol. Defaults to false. Note that this will only work if the page calling this code uses the
|
|
24
|
+
* HTTPS protocol, otherwise the cookie will be created with default options.
|
|
25
|
+
*/
|
|
26
|
+
set : function(name, value){
|
|
27
|
+
var argv = arguments,
|
|
28
|
+
argc = arguments.length,
|
|
29
|
+
expires = (argc > 2) ? argv[2] : null,
|
|
30
|
+
path = (argc > 3) ? argv[3] : '/',
|
|
31
|
+
domain = (argc > 4) ? argv[4] : null,
|
|
32
|
+
secure = (argc > 5) ? argv[5] : false;
|
|
33
|
+
|
|
34
|
+
document.cookie = name + "=" + escape(value) + ((expires === null) ? "" : ("; expires=" + expires.toGMTString())) + ((path === null) ? "" : ("; path=" + path)) + ((domain === null) ? "" : ("; domain=" + domain)) + ((secure === true) ? "; secure" : "");
|
|
35
|
+
},
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Retrieves cookies that are accessible by the current page. If a cookie does not exist, `get()` returns null. The
|
|
39
|
+
* following example retrieves the cookie called "valid" and stores the String value in the variable validStatus.
|
|
40
|
+
*
|
|
41
|
+
* var validStatus = Ext.util.Cookies.get("valid");
|
|
42
|
+
*
|
|
43
|
+
* @param {String} name The name of the cookie to get
|
|
44
|
+
* @return {Object} Returns the cookie value for the specified name;
|
|
45
|
+
* null if the cookie name does not exist.
|
|
46
|
+
*/
|
|
47
|
+
get : function(name){
|
|
48
|
+
var arg = name + "=",
|
|
49
|
+
alen = arg.length,
|
|
50
|
+
clen = document.cookie.length,
|
|
51
|
+
i = 0,
|
|
52
|
+
j = 0;
|
|
53
|
+
|
|
54
|
+
while(i < clen){
|
|
55
|
+
j = i + alen;
|
|
56
|
+
if(document.cookie.substring(i, j) == arg){
|
|
57
|
+
return this.getCookieVal(j);
|
|
58
|
+
}
|
|
59
|
+
i = document.cookie.indexOf(" ", i) + 1;
|
|
60
|
+
if(i === 0){
|
|
61
|
+
break;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return null;
|
|
65
|
+
},
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Removes a cookie with the provided name from the browser
|
|
69
|
+
* if found by setting its expiration date to sometime in the past.
|
|
70
|
+
* @param {String} name The name of the cookie to remove
|
|
71
|
+
* @param {String} [path] The path for the cookie.
|
|
72
|
+
* This must be included if you included a path while setting the cookie.
|
|
73
|
+
*/
|
|
74
|
+
clear : function(name, path){
|
|
75
|
+
if(this.get(name)){
|
|
76
|
+
path = path || '/';
|
|
77
|
+
document.cookie = name + '=' + '; expires=Thu, 01-Jan-70 00:00:01 GMT; path=' + path;
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* @private
|
|
83
|
+
*/
|
|
84
|
+
getCookieVal : function(offset){
|
|
85
|
+
var endstr = document.cookie.indexOf(";", offset);
|
|
86
|
+
if(endstr == -1){
|
|
87
|
+
endstr = document.cookie.length;
|
|
88
|
+
}
|
|
89
|
+
return unescape(document.cookie.substring(offset, endstr));
|
|
90
|
+
}
|
|
91
|
+
});
|
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This mixin enables classes to declare relationships to child elements and provides the
|
|
3
|
+
* mechanics for acquiring the {@link Ext.Element elements} and storing them on an object
|
|
4
|
+
* instance as properties.
|
|
5
|
+
*
|
|
6
|
+
* This class is used by {@link Ext.Component components} and {@link Ext.layout.container.Container container layouts} to
|
|
7
|
+
* manage their child elements.
|
|
8
|
+
*
|
|
9
|
+
* A typical component that uses these features might look something like this:
|
|
10
|
+
*
|
|
11
|
+
* Ext.define('Ext.ux.SomeComponent', {
|
|
12
|
+
* extend: 'Ext.Component',
|
|
13
|
+
*
|
|
14
|
+
* childEls: [
|
|
15
|
+
* 'bodyEl'
|
|
16
|
+
* ],
|
|
17
|
+
*
|
|
18
|
+
* renderTpl: [
|
|
19
|
+
* '<div id="{id}-bodyEl"></div>'
|
|
20
|
+
* ],
|
|
21
|
+
*
|
|
22
|
+
* // ...
|
|
23
|
+
* });
|
|
24
|
+
*
|
|
25
|
+
* The `childEls` array lists one or more relationships to child elements managed by the
|
|
26
|
+
* component. The items in this array can be either of the following types:
|
|
27
|
+
*
|
|
28
|
+
* - String: the id suffix and property name in one. For example, "bodyEl" in the above
|
|
29
|
+
* example means a "bodyEl" property will be added to the instance with the result of
|
|
30
|
+
* {@link Ext#get} given "componentId-bodyEl" where "componentId" is the component instance's
|
|
31
|
+
* id.
|
|
32
|
+
* - Object: with a `name` property that names the instance property for the element, and
|
|
33
|
+
* one of the following additional properties:
|
|
34
|
+
* - `id`: The full id of the child element.
|
|
35
|
+
* - `itemId`: The suffix part of the id to which "componentId-" is prepended.
|
|
36
|
+
* - `select`: A selector that will be passed to {@link Ext#select}.
|
|
37
|
+
* - `selectNode`: A selector that will be passed to {@link Ext.DomQuery#selectNode}.
|
|
38
|
+
*
|
|
39
|
+
* The example above could have used this instead to achieve the same result:
|
|
40
|
+
*
|
|
41
|
+
* childEls: [
|
|
42
|
+
* { name: 'bodyEl', itemId: 'bodyEl' }
|
|
43
|
+
* ]
|
|
44
|
+
*
|
|
45
|
+
* When using `select`, the property will be an instance of {@link Ext.CompositeElement}. In
|
|
46
|
+
* all other cases, the property will be an {@link Ext.Element} or `null` if not found.
|
|
47
|
+
*
|
|
48
|
+
* Care should be taken when using `select` or `selectNode` to find child elements. The
|
|
49
|
+
* following issues should be considered:
|
|
50
|
+
*
|
|
51
|
+
* - Performance: using selectors can be slower than id lookup by a factor 10x or more.
|
|
52
|
+
* - Over-selecting: selectors are applied after the DOM elements for all children have
|
|
53
|
+
* been rendered, so selectors can match elements from child components (including nested
|
|
54
|
+
* versions of the same component) accidentally.
|
|
55
|
+
*
|
|
56
|
+
* This above issues are most important when using `select` since it returns multiple
|
|
57
|
+
* elements.
|
|
58
|
+
*
|
|
59
|
+
* **IMPORTANT**
|
|
60
|
+
* Unlike a `renderTpl` where there is a single value for an instance, `childEls` are aggregated
|
|
61
|
+
* up the class hierarchy so that they are effectively inherited. In other words, if a
|
|
62
|
+
* class where to derive from `Ext.ux.SomeComponent` in the example above, it could also
|
|
63
|
+
* have a `childEls` property in the same way as `Ext.ux.SomeComponent`.
|
|
64
|
+
*
|
|
65
|
+
* Ext.define('Ext.ux.AnotherComponent', {
|
|
66
|
+
* extend: 'Ext.ux.SomeComponent',
|
|
67
|
+
*
|
|
68
|
+
* childEls: [
|
|
69
|
+
* // 'bodyEl' is inherited
|
|
70
|
+
* 'innerEl'
|
|
71
|
+
* ],
|
|
72
|
+
*
|
|
73
|
+
* renderTpl: [
|
|
74
|
+
* '<div id="{id}-bodyEl">'
|
|
75
|
+
* '<div id="{id}-innerEl"></div>'
|
|
76
|
+
* '</div>'
|
|
77
|
+
* ],
|
|
78
|
+
*
|
|
79
|
+
* // ...
|
|
80
|
+
* });
|
|
81
|
+
*
|
|
82
|
+
* The `renderTpl` contains both child elements and unites them in the desired markup, but
|
|
83
|
+
* the `childEls` only contains the new child element. The {@link #applyChildEls} method
|
|
84
|
+
* takes care of looking up all `childEls` for an instance and considers `childEls`
|
|
85
|
+
* properties on all the super classes and mixins.
|
|
86
|
+
*
|
|
87
|
+
* @private
|
|
88
|
+
*/
|
|
89
|
+
Ext.define('Ext.util.ElementContainer', {
|
|
90
|
+
|
|
91
|
+
childEls: [
|
|
92
|
+
// empty - this solves a couple problems:
|
|
93
|
+
// 1. It ensures that all classes have a childEls (avoid null ptr)
|
|
94
|
+
// 2. It prevents mixins from smashing on their own childEls (these are gathered
|
|
95
|
+
// specifically)
|
|
96
|
+
],
|
|
97
|
+
|
|
98
|
+
constructor: function () {
|
|
99
|
+
var me = this,
|
|
100
|
+
childEls;
|
|
101
|
+
|
|
102
|
+
// if we have configured childEls, we need to merge them with those from this
|
|
103
|
+
// class, its bases and the set of mixins...
|
|
104
|
+
if (me.hasOwnProperty('childEls')) {
|
|
105
|
+
childEls = me.childEls;
|
|
106
|
+
delete me.childEls;
|
|
107
|
+
|
|
108
|
+
me.addChildEls.apply(me, childEls);
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
|
|
112
|
+
destroy: function () {
|
|
113
|
+
var me = this,
|
|
114
|
+
childEls = me.getChildEls(),
|
|
115
|
+
child, childName, i, k;
|
|
116
|
+
|
|
117
|
+
for (i = childEls.length; i--; ) {
|
|
118
|
+
childName = childEls[i];
|
|
119
|
+
if (typeof childName != 'string') {
|
|
120
|
+
childName = childName.name;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
child = me[childName];
|
|
124
|
+
if (child) {
|
|
125
|
+
me[childName] = null; // better than delete since that changes the "shape"
|
|
126
|
+
child.remove();
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Adds each argument passed to this method to the {@link #childEls} array.
|
|
133
|
+
*/
|
|
134
|
+
addChildEls: function () {
|
|
135
|
+
var me = this,
|
|
136
|
+
args = arguments;
|
|
137
|
+
|
|
138
|
+
if (me.hasOwnProperty('childEls')) {
|
|
139
|
+
me.childEls.push.apply(me.childEls, args);
|
|
140
|
+
} else {
|
|
141
|
+
me.childEls = me.getChildEls().concat(Array.prototype.slice.call(args));
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
me.prune(me.childEls, false);
|
|
145
|
+
},
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* Sets references to elements inside the component.
|
|
149
|
+
* @private
|
|
150
|
+
*/
|
|
151
|
+
applyChildEls: function(el, id) {
|
|
152
|
+
var me = this,
|
|
153
|
+
childEls = me.getChildEls(),
|
|
154
|
+
baseId, childName, i, selector, value;
|
|
155
|
+
|
|
156
|
+
baseId = (id || me.id) + '-';
|
|
157
|
+
for (i = childEls.length; i--; ) {
|
|
158
|
+
childName = childEls[i];
|
|
159
|
+
|
|
160
|
+
if (typeof childName == 'string') {
|
|
161
|
+
// We don't use Ext.get because that is 3x (or more) slower on IE6-8. Since
|
|
162
|
+
// we know the el's are children of our el we use getById instead:
|
|
163
|
+
value = el.getById(baseId + childName);
|
|
164
|
+
} else {
|
|
165
|
+
if ((selector = childName.select)) {
|
|
166
|
+
value = Ext.select(selector, true, el.dom); // a CompositeElement
|
|
167
|
+
} else if ((selector = childName.selectNode)) {
|
|
168
|
+
value = Ext.get(Ext.DomQuery.selectNode(selector, el.dom));
|
|
169
|
+
} else {
|
|
170
|
+
// see above re:getById...
|
|
171
|
+
value = el.getById(childName.id || (baseId + childName.itemId));
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
childName = childName.name;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
me[childName] = value;
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
|
|
181
|
+
getChildEls: function () {
|
|
182
|
+
var me = this,
|
|
183
|
+
self;
|
|
184
|
+
|
|
185
|
+
// If an instance has its own childEls, that is the complete set:
|
|
186
|
+
if (me.hasOwnProperty('childEls')) {
|
|
187
|
+
return me.childEls;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
// Typically, however, the childEls is a class-level concept, so check to see if
|
|
191
|
+
// we have cached the complete set on the class:
|
|
192
|
+
self = me.self;
|
|
193
|
+
return self.$childEls || me.getClassChildEls(self);
|
|
194
|
+
},
|
|
195
|
+
|
|
196
|
+
getClassChildEls: function (cls) {
|
|
197
|
+
var me = this,
|
|
198
|
+
result = cls.$childEls,
|
|
199
|
+
childEls, i, length, forked, mixin, mixins, name, parts, proto, supr, superMixins;
|
|
200
|
+
|
|
201
|
+
if (!result) {
|
|
202
|
+
// We put the various childEls arrays into parts in the order of superclass,
|
|
203
|
+
// new mixins and finally from cls. These parts can be null or undefined and
|
|
204
|
+
// we will skip them later.
|
|
205
|
+
|
|
206
|
+
supr = cls.superclass;
|
|
207
|
+
if (supr) {
|
|
208
|
+
supr = supr.self;
|
|
209
|
+
parts = [supr.$childEls || me.getClassChildEls(supr)]; // super+mixins
|
|
210
|
+
superMixins = supr.prototype.mixins || {};
|
|
211
|
+
} else {
|
|
212
|
+
parts = [];
|
|
213
|
+
superMixins = {};
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
proto = cls.prototype;
|
|
217
|
+
mixins = proto.mixins; // since we are a mixin, there will be at least us
|
|
218
|
+
for (name in mixins) {
|
|
219
|
+
if (mixins.hasOwnProperty(name) && !superMixins.hasOwnProperty(name)) {
|
|
220
|
+
mixin = mixins[name].self;
|
|
221
|
+
parts.push(mixin.$childEls || me.getClassChildEls(mixin));
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
parts.push(proto.hasOwnProperty('childEls') && proto.childEls);
|
|
226
|
+
|
|
227
|
+
for (i = 0, length = parts.length; i < length; ++i) {
|
|
228
|
+
childEls = parts[i];
|
|
229
|
+
if (childEls && childEls.length) {
|
|
230
|
+
if (!result) {
|
|
231
|
+
result = childEls;
|
|
232
|
+
} else {
|
|
233
|
+
if (!forked) {
|
|
234
|
+
forked = true;
|
|
235
|
+
result = result.slice(0);
|
|
236
|
+
}
|
|
237
|
+
result.push.apply(result, childEls);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
cls.$childEls = result = (result ? me.prune(result, !forked) : []);
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
return result;
|
|
246
|
+
},
|
|
247
|
+
|
|
248
|
+
prune: function (childEls, shared) {
|
|
249
|
+
var index = childEls.length,
|
|
250
|
+
map = {},
|
|
251
|
+
name;
|
|
252
|
+
|
|
253
|
+
while (index--) {
|
|
254
|
+
name = childEls[index];
|
|
255
|
+
if (typeof name != 'string') {
|
|
256
|
+
name = name.name;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
if (!map[name]) {
|
|
260
|
+
map[name] = 1;
|
|
261
|
+
} else {
|
|
262
|
+
if (shared) {
|
|
263
|
+
shared = false;
|
|
264
|
+
childEls = childEls.slice(0);
|
|
265
|
+
}
|
|
266
|
+
Ext.Array.erase(childEls, index, 1);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
return childEls;
|
|
271
|
+
},
|
|
272
|
+
|
|
273
|
+
/**
|
|
274
|
+
* Removes items in the childEls array based on the return value of a supplied test
|
|
275
|
+
* function. The function is called with a entry in childEls and if the test function
|
|
276
|
+
* return true, that entry is removed. If false, that entry is kept.
|
|
277
|
+
*
|
|
278
|
+
* @param {Function} testFn The test function.
|
|
279
|
+
*/
|
|
280
|
+
removeChildEls: function (testFn) {
|
|
281
|
+
var me = this,
|
|
282
|
+
old = me.getChildEls(),
|
|
283
|
+
keepers = (me.childEls = []),
|
|
284
|
+
n, i, cel;
|
|
285
|
+
|
|
286
|
+
for (i = 0, n = old.length; i < n; ++i) {
|
|
287
|
+
cel = old[i];
|
|
288
|
+
if (!testFn(cel)) {
|
|
289
|
+
keepers.push(cel);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
});
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents a filter that can be applied to a {@link Ext.util.MixedCollection MixedCollection}. Can either simply
|
|
3
|
+
* filter on a property/value pair or pass in a filter function with custom logic. Filters are always used in the
|
|
4
|
+
* context of MixedCollections, though {@link Ext.data.Store Store}s frequently create them when filtering and searching
|
|
5
|
+
* on their records. Example usage:
|
|
6
|
+
*
|
|
7
|
+
* //set up a fictional MixedCollection containing a few people to filter on
|
|
8
|
+
* var allNames = new Ext.util.MixedCollection();
|
|
9
|
+
* allNames.addAll([
|
|
10
|
+
* {id: 1, name: 'Ed', age: 25},
|
|
11
|
+
* {id: 2, name: 'Jamie', age: 37},
|
|
12
|
+
* {id: 3, name: 'Abe', age: 32},
|
|
13
|
+
* {id: 4, name: 'Aaron', age: 26},
|
|
14
|
+
* {id: 5, name: 'David', age: 32}
|
|
15
|
+
* ]);
|
|
16
|
+
*
|
|
17
|
+
* var ageFilter = new Ext.util.Filter({
|
|
18
|
+
* property: 'age',
|
|
19
|
+
* value : 32
|
|
20
|
+
* });
|
|
21
|
+
*
|
|
22
|
+
* var longNameFilter = new Ext.util.Filter({
|
|
23
|
+
* filterFn: function(item) {
|
|
24
|
+
* return item.name.length > 4;
|
|
25
|
+
* }
|
|
26
|
+
* });
|
|
27
|
+
*
|
|
28
|
+
* //a new MixedCollection with the 3 names longer than 4 characters
|
|
29
|
+
* var longNames = allNames.filter(longNameFilter);
|
|
30
|
+
*
|
|
31
|
+
* //a new MixedCollection with the 2 people of age 32:
|
|
32
|
+
* var youngFolk = allNames.filter(ageFilter);
|
|
33
|
+
*
|
|
34
|
+
*/
|
|
35
|
+
Ext.define('Ext.util.Filter', {
|
|
36
|
+
|
|
37
|
+
/* Begin Definitions */
|
|
38
|
+
|
|
39
|
+
/* End Definitions */
|
|
40
|
+
/**
|
|
41
|
+
* @cfg {String} property
|
|
42
|
+
* The property to filter on. Required unless a {@link #filterFn} is passed
|
|
43
|
+
*/
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* @cfg {Function} filterFn
|
|
47
|
+
* A custom filter function which is passed each item in the {@link Ext.util.MixedCollection} in turn. Should return
|
|
48
|
+
* true to accept each item or false to reject it
|
|
49
|
+
*/
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @cfg {Boolean} anyMatch
|
|
53
|
+
* True to allow any match - no regex start/end line anchors will be added.
|
|
54
|
+
*/
|
|
55
|
+
anyMatch: false,
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* @cfg {Boolean} exactMatch
|
|
59
|
+
* True to force exact match (^ and $ characters added to the regex). Ignored if anyMatch is true.
|
|
60
|
+
*/
|
|
61
|
+
exactMatch: false,
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* @cfg {Boolean} caseSensitive
|
|
65
|
+
* True to make the regex case sensitive (adds 'i' switch to regex).
|
|
66
|
+
*/
|
|
67
|
+
caseSensitive: false,
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* @cfg {String} root
|
|
71
|
+
* Optional root property. This is mostly useful when filtering a Store, in which case we set the root to 'data' to
|
|
72
|
+
* make the filter pull the {@link #property} out of the data object of each item
|
|
73
|
+
*/
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Creates new Filter.
|
|
77
|
+
* @param {Object} [config] Config object
|
|
78
|
+
*/
|
|
79
|
+
constructor: function(config) {
|
|
80
|
+
var me = this;
|
|
81
|
+
Ext.apply(me, config);
|
|
82
|
+
|
|
83
|
+
//we're aliasing filter to filterFn mostly for API cleanliness reasons, despite the fact it dirties the code here.
|
|
84
|
+
//Ext.util.Sorter takes a sorterFn property but allows .sort to be called - we do the same here
|
|
85
|
+
me.filter = me.filter || me.filterFn;
|
|
86
|
+
|
|
87
|
+
if (me.filter === undefined) {
|
|
88
|
+
if (me.property === undefined || me.value === undefined) {
|
|
89
|
+
// Commented this out temporarily because it stops us using string ids in models. TODO: Remove this once
|
|
90
|
+
// Model has been updated to allow string ids
|
|
91
|
+
|
|
92
|
+
// Ext.Error.raise("A Filter requires either a property or a filterFn to be set");
|
|
93
|
+
} else {
|
|
94
|
+
me.filter = me.createFilterFn();
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
me.filterFn = me.filter;
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* @private
|
|
103
|
+
* Creates a filter function for the configured property/value/anyMatch/caseSensitive options for this Filter
|
|
104
|
+
*/
|
|
105
|
+
createFilterFn: function() {
|
|
106
|
+
var me = this,
|
|
107
|
+
matcher = me.createValueMatcher(),
|
|
108
|
+
property = me.property;
|
|
109
|
+
|
|
110
|
+
return function(item) {
|
|
111
|
+
var value = me.getRoot.call(me, item)[property];
|
|
112
|
+
return matcher === null ? value === null : matcher.test(value);
|
|
113
|
+
};
|
|
114
|
+
},
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* @private
|
|
118
|
+
* Returns the root property of the given item, based on the configured {@link #root} property
|
|
119
|
+
* @param {Object} item The item
|
|
120
|
+
* @return {Object} The root property of the object
|
|
121
|
+
*/
|
|
122
|
+
getRoot: function(item) {
|
|
123
|
+
var root = this.root;
|
|
124
|
+
return root === undefined ? item : item[root];
|
|
125
|
+
},
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* @private
|
|
129
|
+
* Returns a regular expression based on the given value and matching options
|
|
130
|
+
*/
|
|
131
|
+
createValueMatcher : function() {
|
|
132
|
+
var me = this,
|
|
133
|
+
value = me.value,
|
|
134
|
+
anyMatch = me.anyMatch,
|
|
135
|
+
exactMatch = me.exactMatch,
|
|
136
|
+
caseSensitive = me.caseSensitive,
|
|
137
|
+
escapeRe = Ext.String.escapeRegex;
|
|
138
|
+
|
|
139
|
+
if (value === null) {
|
|
140
|
+
return value;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if (!value.exec) { // not a regex
|
|
144
|
+
value = String(value);
|
|
145
|
+
|
|
146
|
+
if (anyMatch === true) {
|
|
147
|
+
value = escapeRe(value);
|
|
148
|
+
} else {
|
|
149
|
+
value = '^' + escapeRe(value);
|
|
150
|
+
if (exactMatch === true) {
|
|
151
|
+
value += '$';
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
value = new RegExp(value, caseSensitive ? '' : 'i');
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
return value;
|
|
158
|
+
}
|
|
159
|
+
});
|