{
    "componentChunkName": "component---src-templates-doc-page-jsx",
    "path": "/angular-data-grid/filter-set-api/",
    "result": {"data":{"markdownRemark":{"htmlAst":{"type":"element","tagName":"div","properties":{},"children":[{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"This section describes how the Set Filter can be controlled programmatically using API calls."}]},{"type":"element","tagName":"h2","properties":{"id":"set-filter-model","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#set-filter-model","ariaLabel":"set filter model permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","dataPrefix":"fas","dataIcon":"link","className":["svg-inline--fa","fa-link"],"role":"img","xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 512 512"},"children":[{"type":"element","tagName":"path","properties":{"fill":"currentColor","d":"M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"},"children":[]}]}]},{"type":"text","value":"Set Filter Model"}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Get and set the state of the Set Filter by getting and setting the model on the filter instance."}]},{"type":"element","tagName":"snippet","properties":{},"children":[{"type":"text","value":"\n|// get filter instance\n|const countryFilterComponent = gridOptions.api.getFilterInstance('country');\n|\n|// get filter model\n|const model = countryFilterComponent.getModel();\n|\n|// set filter model and update\n|countryFilterComponent.setModel({ values: ['Spain', 'Ireland', 'South Africa'] });\n|\n|// refresh rows based on the filter (not automatic to allow for batching multiple filters)\n|gridOptions.api.onFilterChanged();\n"}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The filter model contains an array of string values where each item in the array corresponds to an element to be selected from the set."}]},{"type":"element","tagName":"h2","properties":{"id":"set-filter-api","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#set-filter-api","ariaLabel":"set filter api permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","dataPrefix":"fas","dataIcon":"link","className":["svg-inline--fa","fa-link"],"role":"img","xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 512 512"},"children":[{"type":"element","tagName":"path","properties":{"fill":"currentColor","d":"M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"},"children":[]}]}]},{"type":"text","value":"Set Filter API"}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"ISetFilter"}]},{"type":"text","value":" interface defines the public API for the Set Filter."}]},{"type":"element","tagName":"div","properties":{},"children":[{"type":"element","tagName":"interface-documentation","properties":{"interfacename":"ISetFilter","exclude":"[\"getModelFromUi\", \"applyModel\", \"doesFilterPass\", \"onNewRowsLoaded\", \"onAnyFilterChanged\", \"getModelAsString\"]","overridesrc":"filter-set-api/resources/iSetFilter.json"},"children":[]}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"It is important to note that when updating the Set Filter through the API, it is up to the developer to call "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"filterInstance.applyModel()"}]},{"type":"text","value":" to apply the changes that have been made to the model and then "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"gridOptions.api.onFilterChanged()"}]},{"type":"text","value":" at the end of the interaction with the filter."}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If no call is made to "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"filterInstance.applyModel()"}]},{"type":"text","value":" then the filter UI will show any changes, but they won't be reflected in the filter model. This will appear as if the user never hit the Apply Button (regardless of whether the Apply Button is active or not)."}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If no call to "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"gridOptions.api.onFilterChanged()"}]},{"type":"text","value":" is provided the grid will still show the data relevant to the filter before it was updated through the API."}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"In the example below, you can see how the filter for the Athlete column is modified through the API and how at the end of the interaction a call to "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"gridOptions.api.onFilterChanged()"}]},{"type":"text","value":" is performed."}]},{"type":"element","tagName":"div","properties":{},"children":[{"type":"element","tagName":"grid-example","properties":{"title":"Set Filter API","name":"set-filter-api","type":"mixed","options":"{ \"enterprise\": true, \"exampleHeight\": 570, \"modules\": [\"clientside\", \"setfilter\", \"menu\", \"filterpanel\"] }"},"children":[]}]},{"type":"element","tagName":"h3","properties":{"id":"enabling-case-sensitivity","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#enabling-case-sensitivity","ariaLabel":"enabling case sensitivity permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","dataPrefix":"fas","dataIcon":"link","className":["svg-inline--fa","fa-link"],"role":"img","xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 512 512"},"children":[{"type":"element","tagName":"path","properties":{"fill":"currentColor","d":"M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"},"children":[]}]}]},{"type":"text","value":"Enabling Case-Sensitivity"}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"By default the API is case-insensitive. You can enable case sensitivity by using the "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"caseSensitive: true"}]},{"type":"text","value":" filter parameter:"}]},{"type":"element","tagName":"snippet","properties":{},"children":[{"type":"text","value":"\nconst gridOptions = {\n    columnDefs: [\n        {\n            field: 'colour',\n            filter: 'agSetColumnFilter',\n            filterParams: {\n                caseSensitive: true\n            }\n        }\n    ]\n}\n"}]},{"type":"element","tagName":"div","properties":{"className":["custom-block","note"]},"children":[{"type":"element","tagName":"div","properties":{"className":["custom-block-body"]},"children":[{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"caseSensitive"}]},{"type":"text","value":" option also affects "},{"type":"element","tagName":"a","properties":{"href":"/archive/29.2.0/filter-set-mini-filter/#enabling-case-sensitive-searches"},"children":[{"type":"text","value":"Mini-Filter"}]},{"type":"text","value":" searches and the values presented in the "},{"type":"element","tagName":"a","properties":{"href":"/archive/29.2.0/filter-set-filter-list/#enabling-value-case-sensitivity"},"children":[{"type":"text","value":"Filter List"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The following example demonstrates the difference in behaviour between "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"caseSensitive: false"}]},{"type":"text","value":" (the default) and "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"caseSensitive: true"}]},{"type":"text","value":":"}]},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"With "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"caseSensitive: false"}]},{"type":"text","value":" (the default):"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"setModel()"}]},{"type":"text","value":" will perform "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"case-insensitive"}]},{"type":"text","value":" matching against available values to decide what is enabled in the Filter List."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"setFilterValues()"}]},{"type":"text","value":" will override the available values and force the case of the presented values in the Filter List to those provided."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Selected values will be maintained based upon "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"case-insensitive"}]},{"type":"text","value":" matching."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"With "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"caseSensitive: true"}]},{"type":"text","value":":"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"setModel()"}]},{"type":"text","value":" will perform "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"case-sensitive"}]},{"type":"text","value":" matching against available values to decide what is enabled in the Filter List."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"setFilterValues()"}]},{"type":"text","value":" will override the available values and force the case of the presented values in the Filter List to those provided."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Selected values will be maintained based upon "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"case-sensitive"}]},{"type":"text","value":" matching."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"In both cases "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"getModel()"}]},{"type":"text","value":" and "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"getFilterValues()"}]},{"type":"text","value":" will return the values with casing that matches those displayed in the Filter List."}]},{"type":"text","value":"\n"}]},{"type":"element","tagName":"div","properties":{},"children":[{"type":"element","tagName":"grid-example","properties":{"title":"Set Filter API - Case Sensitivity","name":"set-filter-api-case-sensitive","type":"mixed","options":"{ \"enterprise\": true, \"exampleHeight\": 570, \"modules\": [\"clientside\", \"setfilter\", \"menu\", \"filterpanel\"] }"},"children":[]}]},{"type":"element","tagName":"h2","properties":{"id":"next-up","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#next-up","ariaLabel":"next up permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","dataPrefix":"fas","dataIcon":"link","className":["svg-inline--fa","fa-link"],"role":"img","xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 512 512"},"children":[{"type":"element","tagName":"path","properties":{"fill":"currentColor","d":"M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"},"children":[]}]}]},{"type":"text","value":"Next Up"}]},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Continue to the next section to learn about "},{"type":"element","tagName":"a","properties":{"href":"/archive/29.2.0/filter-multi/"},"children":[{"type":"text","value":"Multi Filters"}]},{"type":"text","value":"."}]}]},"frontmatter":{"title":"Set Filter - API","version":null,"enterprise":true,"description":null},"headings":[{"id":"set-filter-model","depth":2,"value":"Set Filter Model"},{"id":"set-filter-api","depth":2,"value":"Set Filter API"},{"id":"enabling-case-sensitivity","depth":3,"value":"Enabling Case-Sensitivity"},{"id":"next-up","depth":2,"value":"Next Up"}]}},"pageContext":{"frameworks":["javascript","react","angular","vue"],"framework":"angular","srcPath":"/filter-set-api","pageName":"filter-set-api"}},
    "staticQueryHashes": ["1766026005","699667431","940729948"]}