PageSourceSearch

https://flatfile.com/component---src-pages-whats-new-index-tsx-dc2d1a34cc3d3ba4ce03.js

js flatfile.com collected 2026-09-24 17:40:14 UTC 33,872 bytes, 2 lines download raw bytes

1"use strict";(self.webpackChunkRetailGatsby=self.webpackChunkRetailGatsby||[]).push([[9158],{6778:function(e,t,a){a.r(t),a.d(t,{Head:function(){return _},default:function(){return E}});var n=a(96540),o=a(27581);const r=[{id:"x6XnKrBzIHvH7eIaziKWS",internalTitle:"Folders and collections",title:"Folders and collections",publishedDate:"August 12, 2025",publishedDateRaw:"2025-08-13",featureImage:{file:{url:"/img/contentful/4xCmI51i-folders_and_collections_-_whats_new__1_.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Workbooks can now be organized into Folders, and Sheets can be organized into Collections. Adding a Workbook to a Folder or a Sheet to a Collection does not change any data relationships, but allows you to visually sort your data for easier navigation.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Learn how to set up Folders and Collections in our developer docs ",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://flatfile.com/docs/core-concepts/blueprints#workbook-folders-and-sheet-collections"},content:[{nodeType:"text",value:"here",marks:[],data:{}}]},{nodeType:"text",value:".",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"4k8W1k9ISuAY82K6yOtU2V",internalTitle:"Record flags",title:"Record flags",publishedDate:"August 4, 2025",publishedDateRaw:"2025-08-05",featureImage:{file:{url:"/img/contentful/50e7xY66-record_flags_what-s_new.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Record flags allow users to select ",marks:[],data:{}},{nodeType:"text",value:"records they want to label or view in a particular way and tag them. These records are still a part of the main dataset, but can be filtered to and actioned as a group.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Learn more about record flags and how to get started in ",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://support.flatfile.com/articles/7291813783-record-flags"},content:[{nodeType:"text",value:"this article",marks:[],data:{}}]},{nodeType:"text",value:".",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"40Bs433PyWaddtG3quIZzh",internalTitle:"Reference field filtering",title:"Reference field filtering",publishedDate:"July 23, 2025",publishedDateRaw:"2025-07-24",featureImage:{file:{url:"/img/contentful/3Y2DWhD4-what-s_new_-_reference_field_filtering.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"With reference field filtering, users can now configure dropdown fields that show only relevant options based on the value of another field in the same record.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Learn how to configure your filters in this ",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://flatfile.com/docs/core-concepts/fields#reference-field-filtering"},content:[{nodeType:"text",value:"step-by-step guide",marks:[],data:{}}]},{nodeType:"text",value:".",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"VldsuTUFQrXOCOGEWt0gt",internalTitle:"Prepare",title:"Prepare Agent",publishedDate:"July 21, 2025",publishedDateRaw:"2025-07-22",featureImage:null,featureVideo:{video:{items:[{hashed_id:"ci05ibvfhn",id:136405195,duration:40.768,thumbnail:{url:"https://embed-ssl.wistia.com/deliveries/72ce20ebdfc7de59e33c8612c6244198e20bf3fe.jpg?image_crop_resized=200x120",width:200,height:120}}]}},body:{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Flatfile's new Prepare agent helps you restructure incoming data files so they're easily mapped to your destination schema. ",nodeType:"text"}],nodeType:"paragraph"},{data:{},content:[{data:{},marks:[],value:"Import any CSV or Excel file and prompt the agent to:",nodeType:"text"}],nodeType:"paragraph"},{data:{},content:[{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Add, remove, split, combine, or format columns",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"},{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Populate columns with calculations of other fields",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"},{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Create conditional fields",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"},{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Unpivot data (from wide → long)",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"}],nodeType:"unordered-list"},{data:{},content:[{data:{},marks:[],value:"Learn more about Prepare in the user guide ",nodeType:"text"}
1,{data:{uri:"https://learn.flatfile.io/hubfs/Prepare-user-guide-large.pdf"},content:[{data:{},marks:[],value:"here",nodeType:"text"}],nodeType:"hyperlink"},{data:{},marks:[],value:".",nodeType:"text"}],nodeType:"paragraph"},{data:{},content:[{data:{},marks:[],value:"",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"document"},metadata:{tags:[]}},{id:"3JqlgpUvPyYYVpwyldpGkM",internalTitle:"Improved developer docs",title:"Improved developer docs",publishedDate:"July 16, 2025",publishedDateRaw:"2025-07-17",featureImage:null,featureVideo:{video:{items:[{hashed_id:"sf2amdx5p2",id:136220170,duration:29.717,thumbnail:{url:"https://embed-ssl.wistia.com/deliveries/00256d890ca074009e2cd6d65a9f6e27b1e206b0.jpg?image_crop_resized=200x120",width:200,height:120}}]}},body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Flatfile’s developer docs have been completely restructured to make it easier to set up and configure Flatfile. The new experience offers a clear, more progressive path for learning, improved navigation, and built-in support for AI and LLM integration.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Ask the on-page AI assistant any product question, open any page in ChatGPT or Claude as context, or copy the page in Markdown to paste in your tool of choice.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Explore the new docs ",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://flatfile.com/docs/welcome-to-new-docs"},content:[{nodeType:"text",value:"here",marks:[],data:{}}]},{nodeType:"text",value:".",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"57t1KByiC1sxSd0ev6aK0W",internalTitle:"Smart Extract",title:"Smart Extract",publishedDate:"July 14, 2025",publishedDateRaw:"2025-07-15",featureImage:null,featureVideo:{video:{items:[{hashed_id:"si6842uqfd",id:136097025,duration:35.072,thumbnail:{url:"https://embed-ssl.wistia.com/deliveries/d8ffd15bd46e9373df0c8cb2a329ea261d5a6e5f.jpg?image_crop_resized=200x120",width:200,height:120}}]}},body:{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Smart Extract is a new agent within Flatfile designed to help you extract structured, usable data from files that don’t follow a standard tabular format. ",nodeType:"text"}],nodeType:"paragraph"},{data:{},content:[{data:{},marks:[],value:"Smart Extract works with more complex files that contain: ",nodeType:"text"}],nodeType:"paragraph"},{data:{},content:[{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Global or local metadata",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"},{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Multiple header rows",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"},{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Multiple tables within a sheet",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"},{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Summary or total rows",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"},{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Shifted data tables",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"},{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Hierarchical data",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"list-item"}],nodeType:"unordered-list"},{data:{},content:[{data:{},marks:[],value:"You’ll be prompted to use Smart Extract when Flatfile detects these characteristics during the initial data upload and extraction process. ",nodeType:"text"}],nodeType:"paragraph"},{data:{},content:[{data:{},marks:[],value:"Learn more about Smart Extract and how to get started in ",nodeType:"text"},{data:{uri:"https://support.flatfile.com/articles/7144958493-how%20to%20use%20smart%20extract"},content:[{data:{},marks:[],value:"this article",nodeType:"text"}],nodeType:"hyperlink"},{data:{},marks:[],value:".",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"document"},metadata:{tags:[]}},{id:"3dWClJPx3pvD1LW4JT5h2L",internalTitle:"Saved Transforms",title:"Saved Transforms",publishedDate:"July 7, 2025",publishedDateRaw:"2025-07-08",featureImage:{file:{url:"/img/contentful/44hztyQb-saved_transform.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Transforms that are applied to your data—whether from the Transform agent's recommendations or by user prompting—can now be saved to reuse on future imports. Any transforms you choose to save will be stored in the Saved Transforms library and can be run individually or all at once to quickly clean and prepare incoming data.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Learn more about Saved Transforms and how to get started in ",marks:[],data:{}}
1,{nodeType:"hyperlink",data:{uri:"https://support.flatfile.com/articles/6109299281-How%20to%20use%20Saved%20Transforms%20in%20Flatfile"},content:[{nodeType:"text",value:"this article",marks:[],data:{}}]},{nodeType:"text",value:".",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"6ljuD8LAwVLnSEOY6VFKup",internalTitle:"Inline Transform",title:"Inline Transform",publishedDate:"July 7, 2025",publishedDateRaw:"2025-07-08",featureImage:{file:{url:"/img/contentful/36QPDvHD-inline_transform.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"You no longer have to visit a separate interface to prompt AI to transform your data. With Inline Transform, you can select the three dots next to any field and type your prompts right there. You'll see a preview of any changes to your data and be able to edit or approve.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Learn more about Inline Transform and how to get started in ",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://support.flatfile.com/articles/8127887004-How%20to%20use%20Inline%20Transform%20in%20Flatfile"},content:[{nodeType:"text",value:"this article",marks:[],data:{}}]},{nodeType:"text",value:".",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"6IzNUbtfewOv9nCNk5l7f5",internalTitle:"Analyze & Suggestions",title:"Analyze & Suggestions",publishedDate:"July 7, 2025",publishedDateRaw:"2025-07-08",featureImage:{file:{url:"/img/contentful/5DKt7wKI-analyze___suggestions.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"With the release of Analyze and Suggestions, Flatfile now recommends actions to resolve validation errors and formatting issues in your workbooks.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"When you click ",marks:[],data:{}},{nodeType:"text",value:"Analyze",marks:[{type:"bold"}],data:{}},{nodeType:"text",value:", the Transform agent will read your data, consider your schema, validation rules, and prior decisions, and determine where it has enough context to recommend actions.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"As the analysis runs, you'll see sparkle icons appear next to column headers where the agent is proposing actions. Clicking the icon will open the ",marks:[],data:{}},{nodeType:"text",value:"Suggestions",marks:[{type:"bold"}],data:{}},{nodeType:"text",value:" for that field and allow you to edit, preview, and apply the transform. ",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Learn more about these features and how to get started in ",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://support.flatfile.com/articles/7462518044-How%20to%20use%20Analyze%20and%20Suggestions%C2%A0in%20Flatfile"},content:[{nodeType:"text",value:"this article",marks:[],data:{}}]},{nodeType:"text",value:".",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"5tlpxWkSKfLP3RuZqJzMoX",internalTitle:"MCP server",title:"Flatfile MCP server",publishedDate:"April 29, 2025",publishedDateRaw:"2025-04-30",featureImage:{file:{url:"/img/contentful/4NTSdEuL-mcp.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Use Flatfile's newly released MCP server with tools like Claude Code, Claude Desktop, and Cursor to interact directly with your Flatfile data. Ask questions, add sheets, create sample data, and more—all with whatever tool you’re most comfortable with.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Learn more about the server and how to get started in ",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://flatfile.com/docs/learning-center/guides/mcp"},content:[{nodeType:"text",value:"this guide",marks:[],data:{}}]},{nodeType:"text",value:".",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"\n",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"1PKNV1NJHDxwYWOybf3fWB",internalTitle:"Advanced filtering",title:"Advanced filtering",publishedDate:"April 16, 2025",publishedDateRaw:"2025-04-17",featureImage:{file:{url:"/img/contentful/2oOkf0O9-advanced_filters__3_.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"We've improved our filtering experience within sheets to allow users more control over the data you see. You can now apply both basic and complex filters to view errors, missing values, specific records or values, and more.",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"3MiJVz5hzwNNSC6vBOkpGD",internalTitle:"Increased retrieval for console logs",title:"Console log updates",publishedDate:"March 30, 2025",publishedDateRaw:"2025-03-31",featureImage:{file:{url:"/img/contentful/46VF44RP-console_logs.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"We now retrieve 5MB of log records for each agent run (previously 4KB) and ",marks:[],data:{}},{nodeType:"text",value:"display an error icon in the Agents dashboard next to any runs with issues.",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"reRCgYjjkZaQ3MtrXfGP0",internalTitle:"Field context menu",title:"Field context menu",publishedDate:"March 24, 2025",publishedDateRaw:"2025-03-25",featureImage:{file:{url:"/img/contentful/37Uq9b1W-deterministic_updates__4_.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Edit field settings like name, type, description, and required or unique status from our new field context menu. From within Blueprint in Build Mode, click the three dots next to any field to access these options.",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"4FW7iIKc05Jbpw3mvbYnkC",internalTitle:"Personal access tokens",title:"Personal access tokens",publishedDate:"March 19, 2025",publishedDateRaw:"2025-03-20",featureImage:{file:{url:"/img/contentful/8qJ0OBAE-pers
1onal_access_tokens.webp"}},featureVideo:null,body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"We’ve just rolled out personal access tokens for Flatfile API access. Unlike shared environment keys, these tokens will follow users across environments, are tied to that user’s permissions, and can be revoked at any time.",marks:[],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://flatfile.com/docs/documentation/authentication/account-token#personal-access-tokens"},content:[{nodeType:"text",value:"You can find the technical documentation here.",marks:[],data:{}}]},{nodeType:"text",value:"",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"3fOkRS7B4zWfvqEWjyNxUv",internalTitle:"Insert row",title:"Insert row",publishedDate:"March 17, 2025",publishedDateRaw:"2025-03-18",featureImage:null,featureVideo:{video:{items:[{hashed_id:"nk6e6krnfd",id:131479319,duration:12.0744,thumbnail:{url:"https://embed-ssl.wistia.com/deliveries/e7bde548c8b22ccf7b27156e9b8428a53741c8e1.jpg?image_crop_resized=200x120",width:200,height:120}}]}},body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:'You can now hover in between row numbers and click "Insert row" to add a record anywhere in a table.',marks:[],data:{}}]}]},metadata:{tags:[{sys:{type:"Link",linkType:"Tag",id:"uiImprovement"}}]}},{id:"7Kpl5oJUZkjYiBefWGVq8e",internalTitle:"Add a row button",title:"Button to add a row",publishedDate:"March 11, 2025",publishedDateRaw:"2025-03-12",featureImage:null,featureVideo:{video:{items:[{hashed_id:"dfg2kczz1l",id:131255854,duration:12.0744,thumbnail:{url:"https://embed-ssl.wistia.com/deliveries/8f4c2c003044a944cdce3beade47ca3c930a78de.jpg?image_crop_resized=200x120",width:200,height:120}}]}},body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"In response to customer feedback, we've released an “add a row” button. You’ll see it frozen at the bottom of any sheet you’re working on, allowing you to quickly click and add a new record without scrolling to the bottom of the dataset.",marks:[],data:{}}]}]},metadata:{tags:[{sys:{type:"Link",linkType:"Tag",id:"uiImprovement"}}]}},{id:"2pLZXFqoYHpqeurTtdYtWw",internalTitle:"Calculations",title:"Calculations",publishedDate:"March 4, 2025",publishedDateRaw:"2025-03-05",featureImage:null,featureVideo:{video:{items:[{hashed_id:"ypbaeen5m7",id:131255856,duration:13.7694,thumbnail:{url:"https://embed-ssl.wistia.com/deliveries/8b759b4ea01411f78f7ec332c38658c6946bc654.jpg?image_crop_resized=200x120",width:200,height:120}}]}},body:{nodeType:"document",data:{},content:[{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"Our new Calculations feature provides deeper insight into your progress toward a complete dataset, displaying count empty, count filled, percent empty, and percent filled metrics by column. \n\n",marks:[],data:{}},{nodeType:"text",value:"This feature requires activation—please contact your Customer Success Manager to enable it. ",marks:[{type:"italic"}],data:{}}]},{nodeType:"paragraph",data:{},content:[{nodeType:"text",value:"",marks:[],data:{}},{nodeType:"hyperlink",data:{uri:"https://support.flatfile.com/en/articles/10714991-calculations"},content:[{nodeType:"text",value:"Read more on our Knowledge Base",marks:[],data:{}}]},{nodeType:"text",value:"",marks:[],data:{}}]}]},metadata:{tags:[]}},{id:"4S5O15emkME2szc9NJHXgi",internalTitle:"Copy paste ranges",title:"Copy & paste multiple records or values into a range",publishedDate:"February 26, 2025",publishedDateRaw:"2025-02-27",featureImage:null,featureVideo:{video:{items:[{hashed_id:"moa75utffy",id:131272835,duration:20.6667,thumbnail:{url:"https://embed-ssl.wistia.com/deliveries/08106239c1bc214c6e98921052f2cbb9e42bf12c.jpg?image_crop_resized=200x120",width:200,height:120}}]}},body:{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Now you can copy multiple values or rows and paste them into a range to have them automatically repeat throughout. This speeds up the data preparation process while minimizing errors, allowing you to move efficiently through a large volume of data.",n
1odeType:"text"}],nodeType:"paragraph"},{data:{},content:[{data:{},marks:[],value:"",nodeType:"text"},{data:{uri:"https://support.flatfile.com/en/articles/10644463-copy-and-paste-values-or-records"},content:[{data:{},marks:[],value:"Read more on our Knowledge Base",nodeType:"text"}],nodeType:"hyperlink"},{data:{},marks:[],value:"",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"document"},metadata:{tags:[{sys:{type:"Link",linkType:"Tag",id:"uiImprovement"}}]}},{id:"5kw08J3MeQ7sfFg55FmSqO",internalTitle:"SFTP",title:"Flatfile-hosted SFTP",publishedDate:"February 19, 2025",publishedDateRaw:"2025-02-20",featureImage:null,featureVideo:{video:{items:[{hashed_id:"n2a7018i0v",id:131256065,duration:14.8376,thumbnail:{url:"https://embed-ssl.wistia.com/deliveries/8785205abf04f6bfaab637a415bb1aa193b8467c.jpg?image_crop_resized=200x120",width:200,height:120}}]}},body:{data:{},content:[{data:{},content:[{data:{},marks:[],value:"Flatfile now offers Flatfile-hosted SFTP, enabling users to upload files via SFTP directly into a designated space. Files uploaded in this way automatically appear in the space and will be extracted, exactly as if you had dropped files onto the Files page.",nodeType:"text"}],nodeType:"paragraph"},{data:{},content:[{data:{},marks:[],value:"",nodeType:"text"},{data:{uri:"https://support.flatfile.com/en/articles/10604376-sftp"},content:[{data:{},marks:[],value:"Read more on our Knowledge Base",nodeType:"text"}],nodeType:"hyperlink"},{data:{},marks:[],value:"",nodeType:"text"}],nodeType:"paragraph"}],nodeType:"document"},metadata:{tags:[{sys:{type:"Link",linkType:"Tag",id:"dataMigration"}},{sys:{type:"Link",linkType:"Tag",id:"dataSecurity"}}]}}];var l=a(24133),d=a(20582),i=a(73219),s=a(86502),c=a(83643),u=a(89448),p=a(23906),m=a(82519),h=a(64880),y=a(82471),f=a(53723),g=a(67115),v=a(59743),b=a(64754),T=a(69354);const w=(0,o.default)(m.jR).withConfig({displayName:"whats-new__ResourceCenterWrapper",componentId:"sc-1exiqh2-0"})(["background-color:",";","{margin-bottom:1rem;}","{margin-bottom:3rem;max-width:50ch;}",",","{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;}","{-webkit-line-clamp:3;}","{-webkit-line-clamp:4;margin-top:1rem;margin-bottom:2rem;color:",";min-height:92px;}"],y.K5.white,i.Q0,i.cR,i.hE,i.fz,i.hE,i.fz,y.K5.pigeon700),k=o.default.div.withConfig({displayName:"whats-new__RichTextWrapper",componentId:"sc-1exiqh2-1"})([""," pre code{line-height:1.5;}a{color:var(--color-gray-800) !important;text-decoration:none !important;transition:var(--transition-basic);border-bottom:1px solid var(--color-gray-400) !important;cursor:pointer;&:hover,&:focus,&:active{color:var(--color-gray-950) !important;border-bottom:1px solid var(--color-gray-950) !important;}}"],g.ZH.toString()),x=e=>{let{activePage:t,currentPageSet:a,pageChange:r,paginationTotal:l,updatePages:d}=e;const i=o.default.div.withConfig({displayName:"whats-new__PaginateStyle",componentId:"sc-1exiqh2-2"})(["margin:2.5rem 0;.pagination > ul > a > li{display:inline-block;}"]);return n.createElement(n.Fragment,null,n.createElement(c.m,null,n.createElement("div",{className:"mb-2 border-b-1 border-gray-300 max-w-container mx-auto"}),a.map(e=>{var t,a,o,r,l;return n.createElement(n.Fragment,{key:e.id},n.createElement("div",{className:"py-8 border-b-1 border-gray-300 max-w-container mx-auto"},n.createElement(u.x,{key:e.id,columns:{md:9},className:""},n.createElement(u.V,{span:{sm:3},className:"flex flex-col justify-between"},n.createElement("div",{className:"mb-0"},e.title&&n.createElement("h2",{className:"text-xl mb-1"},e.title),e.publishedDate&&n.createElement("p",{className:"text-sm"},e.publishedDate))),n.createElement(u.V,{span:{sm:6}},e.featureVideo&&n.createElement("div",{className:"mb-8 rounded-sm"},n.createElement(b.A,{mediaId:null===(t=e.featureVideo)||void 0===t||null===(a=t.video)||void 0===a||null===(o=a.items[0])||void 0===o?void 0:o.hashed_id,ariaLabel:"Flatfile hero video",aspect:"1.7777777777777777"})),e.featureImage&&n.createElement("img",{src:null===(r=e.featureImage)||void 0===r||null===(l=r.file)||void 0===l?void 0:l.url,alt:e.title,className:"w-auto mx-auto block border-1 border-gray-300 mb-8 rounded-sm"}),n.createElement(k,null,e.body&&(0,f.Z)(e.body))))))})),n.createElement(u.x,{container:!0,columns:{sm:1},columnSpacing:2,rowSpacing:2}
1,n.createElement(u.V,null,n.createElement(i,null,n.createElement(s.A,{changeCurrentPage:e=>{r(e),d(e)},currentPage:t,totalPages:l})))))};var E=()=>{const e=r,{0:t,1:a}=(0,n.useState)(Math.ceil(e.length/9)),{0:o,1:i}=(0,n.useState)(1),{0:s,1:c}=(0,n.useState)(e.slice(9*o-9,9*o));return n.createElement(p.A,null,n.createElement(d.A,null),n.createElement(T.A,null),n.createElement("div",{className:"pt-32 md:pt-24 pb-12 md:pb-24"},n.createElement(v.pL,{title:"What’s new with Flatfile",titleElem:"h1",description:"Read through our latest product updates below and subscribe to our email newsletter to be kept informed about new releases.",target:"#subscribeModuleForm"})),n.createElement(w,{paddingSmall:"0 0 3rem",paddingMedium:"0 0 3rem",paddingLarge:"0 0 3rem"},n.createElement(x,{activePage:o,currentPageSet:s,pageChange:i,paginationTotal:t,updatePages:t=>{c(e.slice(9*t-9,9*t))}})),n.createElement("div",{className:"pt-12 pb-28"},n.createElement(v.pL,{title:'Stay up to date with Flatfile <span style="display: block; color: #838383;">product releases</span>',titleElem:"h3",description:"Sign up for our email newsletter and we'll make sure you're always kept informed.",target:"#subscribeModuleForm2"})),n.createElement(l.A,null))};const _=()=>n.createElement(h.A,{description:"Check out the latest feature releases and updates from Flatfile",title:"What’s new with Flatfile"})},53723:function(e,t,a){a.d(t,{Z:function(){return f}});var n=a(96540),o=a(4240),r=a(78280),l=a(30630),d=a(15456),i=a(84708),s=a(90070);const c=e=>e?"string"==typeof e?e:e.value?e.value:e.content&&Array.isArray(e.content)?e.content.map(c).join(""):"":"",u=e=>(e||"").replace(/[^a-zA-Z0-9\s]/g,"").split(/\s+/).map((e,t)=>0===t?e.toLowerCase():e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(""),p=e=>e.marks&&1===e.marks.length&&"code"===e.marks[0].type&&e.value&&e.value.length>0,m=e=>"text"===e.nodeType&&(!e.value||e.value&&0===e.value.replace(/\s/g,"").length),h=(e,t)=>{var a,n;return null!==(a=null==e||null===(n=e.fields)||void 0===n?void 0:n[t])&&void 0!==a?a:null==e?void 0:e[t]},y={renderNode:{[r.XD.HYPERLINK]:e=>n.createElement("a",{href:e.data.uri,target:""+(e.data.uri.includes("#")?"_self":"_blank"),rel:""+(e.data.uri.startsWith("https://flatfile.com")?"":"noopener noreferrer")},e.content[0].value),[r.nA.HEADING_2]:(e,t)=>{const a=c(e),o=u(a);return n.createElement("h2",{className:"title-h3",id:o},n.createElement("a",{id:o,href:`#${o}`},t))},[r.nA.HEADING_3]:(e,t)=>{const a=c(e),o=u(a);return n.createElement("h3",{className:"title-h3",id:o},t)},[r.nA.HEADING_4]:(e,t)=>{const a=c(e),o=u(a);return n.createElement("h4",{className:"title-h4",id:o},t)},[r.nA.HEADING_5]:(e,t)=>{const a=c(e),o=u(a);return n.createElement("h5",{className:"title-h5",id:o},t)},[r.nA.HEADING_6]:(e,t)=>{const a=c(e),o=u(a);return n.createElement("h6",{className:"title-h5",id:o},t)},[r.nA.PARAGRAPH]:(e,t)=>{const a=e.content,o=a.filter(p),r=a.filter(e=>!p(e)&&!m(e)),l=a.filter(e=>!m(e));return o.length>0&&0===r.length?n.createElement("div",{className:"gatsby-highlight"},n.createElement("pre",{className:"language-javascript"},t)):0===l.length?n.createElement(n.Fragment,null):n.createElement("p",{className:"paragraph mb-6 text-[#808080]"},t)},[r.nA.EMBEDDED_ENTRY]:e=>{const t=e.data.target,a=(e=>{var t,a,n,o;return null!=e&&null!==(t=e.sys)&&void 0!==t&&null!==(a=t.contentType)&&void 0!==a&&null!==(n=a.sys)&&void 0!==n&&n.id?e.sys.contentType.sys.id:null!=e&&null!==(o=e.internal)&&void 0!==o&&o.type?e.internal.type.replace("Contentful","").toLowerCase():null})(t);if("figureWithCaption"===a||"figurewithcaption"===a){var o,r,c,u;const e=(null===(o=h(t,"image"))||void 0===o||null===(r=o.fields)||void 0===r||null===(c=r.file)||void 0===c?void 0:c.url)||(null===(u=h(t,"image"))||void 0===u?void 0:u.url),a=h(t,"caption"),l=h(t,"captionAlignment")||"center";return n.createElement("figure",{className:"!py-8"},n.createElement("img",{className:"max-w-full mx-auto",src:null!=e&&e.startsWith("//")?`https:${e}`:e,alt:a||""}),n.createElement("figcaption",{className:`text-${l} text-gray-11 font-ital font-no-synthesis py-1`},a))}if("cta"===a){const e=h(t,"ctaText"),a=h(t,"text"),o=h(t,"title"),r=h(t,"href"),l=h(t,"directSignup");return n.createElement(s.nZ,{ctaText:e,text:a,title:o,href:r,directSignup:l})}if("table"===a){var p;const e=null===(p=h(t,"table"))||void 0===p?void 0:p.tableData;return n.createElement(s.Ft,{rows:e})}if("codeBlock"===a||"codeblock"===a){var m;
1const e=h(t,"language")||"javascript",a=(null===(m=h(t,"code"))||void 0===m?void 0:m.code)||h(t,"code");return n.createElement(l.A,{className:`language-${e}`,copy:!0},(a||"").replace(/```/g,""))}if("anchorPoint"===a||"anchorpoint"===a){const e=h(t,"name");return n.createElement("div",{id:e})}if("video"===a){const e=h(t,"url"),a=h(t,"title");return n.createElement("iframe",{allow:"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,frameBorder:"0",height:"315",src:e,title:a,width:"560"})}if("wistiaVideo"===a||"wistiavideo"===a){var y,f;const e=h(t,"video"),a=h(t,"title"),o=null==e||null===(y=e.items)||void 0===y||null===(f=y[0])||void 0===f?void 0:f.hashed_id;return o?n.createElement("div",{style:{aspectRatio:"16/9",margin:"1.75rem auto",position:"relative",border:"2px solid black"}},n.createElement("div",{style:{height:"100%",left:0,position:"absolute",top:0,width:"100%"}},n.createElement("iframe",{src:`https://fast.wistia.net/embed/iframe/${o}?seo=true&videoFoam=true`,title:a,allow:"autoplay; fullscreen",allowTransparency:!0,frameBorder:0,scrolling:"no",className:"wistia_embed",name:"wistia_embed",width:"100%",height:"100%"}))):n.createElement(n.Fragment,null)}if("iframe"===a)return n.createElement("iframe",{allow:h(t,"allow"),allowFullScreen:h(t,"allowfullscreen"),height:h(t,"height"),loading:h(t,"loading"),name:h(t,"name"),referrerPolicy:h(t,"referrerpolicy"),src:h(t,"src"),title:h(t,"title"),width:h(t,"width")});if("podcastEpisode"===a||"podcastepisode"===a)return n.createElement(s.xf,{applePodcastLink:h(t,"applePodcastLink"),googlePodcastLink:h(t,"googlePodcastLink"),sounderLink:h(t,"sounderLink"),spotifyLink:h(t,"spotifyLink"),stitcherLink:h(t,"stitcherLink")});if("infoBox"===a||"infobox"===a){var g;const e=(null===(g=h(t,"text"))||void 0===g?void 0:g.text)||h(t,"text");return n.createElement(d.Ay,{message:e})}if("quote"===a){var v;const e=(null===(v=h(t,"body"))||void 0===v?void 0:v.body)||h(t,"body"),a=h(t,"quotee"),o=null!=a&&a.fields?{fullName:a.fields.fullName,jobTitle:a.fields.jobTitle}:a;return n.createElement(i.x,{body:e,quotee:o})}return n.createElement(n.Fragment,null)},[r.nA.EMBEDDED_ASSET]:e=>{var t,a,o,r;const l=e.data.target,d=(null==l||null===(t=l.fields)||void 0===t||null===(a=t.file)||void 0===a?void 0:a.url)||(null==l||null===(o=l.file)||void 0===o?void 0:o.url),i=(null==l||null===(r=l.fields)||void 0===r?void 0:r.description)||(null==l?void 0:l.description)||"";if(!d)return n.createElement(n.Fragment,null);const s=d.startsWith("//")?`https:${d}`:d;return n.createElement("img",{alt:i,src:s})}}},f=e=>e?(0,o.i)(e,y):null},64754:function(e,t,a){var n=a(96540);t.A=e=>{let{mediaId:t,aspect:a,ariaLabel:o}=e;const{0:r,1:l}=(0,n.useState)(!1);return(0,n.useEffect)(()=>{const e=document.createElement("script");return e.src="https://fast.wistia.com/player.js",e.async=!0,e.onload=()=>l(!0),document.body.appendChild(e),()=>{document.body.removeChild(e)}},[]),r?n.createElement("wistia-player",{"media-id":t,aspect:a,"aria-label":o}):null}},69354:function(e,t,a){a.d(t,{A:function(){return i}});var n=a(96540),o=a(86462),r=a(12354);const l={label:"Resources",to:"/resources/",showChevron:!1},d=[{label:"Blog",to:"/blog/"},{label:"Guides & reports",to:"/resources/guides/"},{label:"Case studies",to:"/resources/case-studies/"},{label:"Webinars",to:"/resources/webinars/"}];var i=e=>{let{links:t=d,backgroundColor:a="var(--color-white)",logoLink:i=l}=e;const s=(0,o.useLocation)(),c=(0,n.useRef)(null),{0:u,1:p}=(0,n.useState)(null);return(0,n.useEffect)(()=>{p(s.pathname)},[s]),(0,n.useEffect)(()=>{if(u&&c.current){const e=c.current.querySelector(`a[href="${u}"]`);e&&setTimeout(()=>{var t;const a=null===(t=c.current)||void 0===t?void 0:t.getBoundingClientRect(),n=e.getBoundingClientRect();if(c.current&&a){const t=n.left+e.offsetWidth/2-a.left-c.current.clientWidth/2;c.current.scrollTo({left:t,behavior:"smooth"})}},100)}},[u]),n.createElement(n.Fragment,null,n.createElement("div",{className:"Subnavbar-module--subnavbar--d79fb",style:{backgroundColor:a}},n.createElement("div",{className:"Subnavbar-module--subnavbar__Container--8fd83"},n.createElement("div",{className:"Subnavbar-module--subnavbar__Content--94e2f"},n.createElement("div",{className:"Subnavbar-module--subnavbar__Logo--ba180"},n.createElement(r.N,{href:i.to,showLeadIcon:i.showChevron},i.label)),n.createElement("div",{className:"Subnavbar-module--subnavbar__NavContainer--84e6e"},n.createElement("div",{className:"Subnavbar-module--subnavbar__NavWrapper--94acd",ref:c},n.createElement("nav",{className:"Subnavbar-module--subnavbar__Nav--23d44"},t.map((e,t)=>n.createElement(r.N,{key:t,href:e.to,className:null!=u&&u.includes(e.to)?"Subnavbar-module--subnavbar__LinkActive--ccb6a":"Subnavbar-module--subnavbar__Link--c82d3"},e.label)))))))))}}}]);
2//# sourceMappingURL=component---src-pages-whats-new-index-tsx-dc2d1a34cc3d3ba4ce03.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.