Files
masonry/.idea/copilotDiffState.xml

18 lines
16 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CopilotDiffPersistence">
<option name="pendingDiffs">
<map>
<entry key="$PROJECT_DIR$/debug.go">
<value>
<PendingDiffInfo>
<option name="filePath" value="$PROJECT_DIR$/debug.go" />
<option name="originalContent" value="package main&#10;&#10;import (&#10;&#9;&quot;fmt&quot;&#10;&#9;&quot;masonry/lang&quot;&#10;)&#10;&#10;func main() {&#10;&#9;// Test the complete DSL with servers, entities, endpoints, and pages&#10;&#9;input := `server MyApp host &quot;localhost&quot; port 8080&#10;&#9;&#10;&#9;entity User desc &quot;User account management&quot;&#10;&#9;&#9;id: uuid required unique&#10;&#9;&#9;email: string required validate email&#10;&#9;&#9;name: string default &quot;Anonymous&quot;&#10;&#9;&#9;&#10;&#9;endpoint GET &quot;/users&quot; for User desc &quot;List users&quot; auth&#10;&#9;&#9;param page: int from query&#10;&#9;&#9;param limit: int from query&#10;&#9;&#9;returns list as &quot;json&quot; fields [id, email, name]&#10;&#9;&#9;&#10;&#9;endpoint POST &quot;/users&quot; for User desc &quot;Create user&quot;&#10;&#9;&#9;param user_data: object required from body&#10;&#9;&#9;returns object fields [id, email, name]&#10;&#9;&#9;&#10;&#9;page UserManagement at &quot;/admin/users&quot; layout AdminLayout title &quot;User Management&quot; auth&#10;&#9;&#9;meta description &quot;Manage system users&quot;&#10;&#9;&#9;meta keywords &quot;users, admin, management&quot;&#10;&#9;&#9;&#10;&#9;&#9;component Table for User&#10;&#9;&#9;&#9;fields [email, name, id]&#10;&#9;&#9;&#9;actions [edit via &quot;/users/{id}&quot;, delete via &quot;/users/{id}&quot;, create via &quot;/users&quot;]&#10;&#9;&#9;&#9;data from &quot;/users&quot;&#10;&#9;&#9;&#9;style modern classes [&quot;table-striped&quot;, &quot;table-hover&quot;]&#10;&#9;&#9;&#9;pagination size 20&#10;&#9;&#9;&#9;filters [email as text label &quot;Search email&quot;, name as text label &quot;Search name&quot;]&#10;&#9;&#9;&#9;validate&#10;&#9;&#9;&#9;&#10;&#9;&#9;component Form for User&#10;&#9;&#9;&#9;fields [email, name]&#10;&#9;&#9;&#9;actions [save via &quot;/users&quot;, cancel]&#10;&#9;&#9;&#9;style clean&#10;&#9;&#9;&#9;validate&#10;&#9;&#9;&#9;&#10;&#9;page UserList at &quot;/users&quot; layout MainLayout title &quot;Users&quot;&#10;&#9;&#9;component Table for User&#10;&#9;&#9;&#9;fields [email, name]&#10;&#9;&#9;&#9;data from &quot;/users&quot;&#10;&#9;&#9;&#9;pagination size 10`&#10;&#10;&#9;ast, err := lang.ParseInput(input)&#10;&#9;if err != nil {&#10;&#9;&#9;fmt.Printf(&quot;Error: %v\n&quot;, err)&#10;&#9;} else {&#10;&#9;&#9;fmt.Printf(&quot; Successfully parsed complete DSL with pages!\n\n&quot;)&#10;&#10;&#9;&#9;for _, def := range ast.Definitions {&#10;&#9;&#9;&#9;if def.Server != nil {&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Server: %s\n&quot;, def.Server.Name)&#10;&#9;&#9;&#9;&#9;for _, setting := range def.Server.Settings {&#10;&#9;&#9;&#9;&#9;&#9;if setting.Host != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; host: %s\n&quot;, *setting.Host)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;if setting.Port != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; port: %d\n&quot;, *setting.Port)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;}&#10;&#10;&#9;&#9;&#9;if def.Entity != nil {&#10;&#9;&#9;&#9;&#9;entity := def.Entity&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Entity: %s&quot;, entity.Name)&#10;&#9;&#9;&#9;&#9;if entity.Description != nil {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; - %s&quot;, *entity.Description)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#10;&#9;&#9;&#9;&#9;for _, field := range entity.Fields {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; %s: %s&quot;, field.Name, field.Type)&#10;&#9;&#9;&#9;&#9;&#9;if field.Required {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; (required)&quot;)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;if field.Unique {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; (unique)&quot;)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;if field.Default != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; default=%s&quot;, *field.Default)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;}&#10;&#10;&#9;&#9;&#9;if def.Endpoint != nil {&#10;&#9;&#9;&#9;&#9;endpoint := def.Endpoint&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Endpoint: %s %s&quot;, endpoint.Method, endpoint.Path)&#10;&#9;&#9;&#9;&#9;if endpoint.Entity != nil {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; (for %s)&quot;, *endpoint.Entity)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;if endpoint.Description != nil {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; - %s&quot;, *endpoint.Description)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;if endpoint.Auth {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; [AUTH]&quot;)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n\n&quot;)&#10;&#9;&#9;&#9;}&#10;&#10;&#9;&#9;&#9;if def.Page != nil {&#10;&#9;&#9;&#9;&#9;page := def.Page&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Page: %s at %s&quot;, page.Name, page.Path)&#10;&#9;&#9;&#9;&#9;if page.Title != nil {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; - %s&quot;, *page.Title)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;if page.Auth {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; [AUTH]&quot;)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Layout: %s\n&quot;, page.Layout)&#10;&#10;&#9;&#9;&#9;&#9;for _, meta := range page.Meta {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Meta %s: %s\n&quot;, meta.Name, meta.Content)&#10;&#9;&#9;&#9;&#9;}&#10;&#10;&#9;&#9;&#9;&#9;for _, comp := range page.Components {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Component: %s&quot;, comp.Type)&#10;&#9;&#9;&#9;&#9;&#9;if comp.Entity != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; for %s&quot;, *comp.Entity)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#10;&#9;&#9;&#9;&#9;&#9;for _, attr := range comp.Config {&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Fields != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; fields: %v\n&quot;, attr.Fields.Fields)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Actions != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; actions: &quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;for i, action := range attr.Actions.Actions {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if i &gt; 0 {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;, &quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;%s&quot;, action.Name)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if action.Endpoint != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; via %s&quot;, *action.Endpoint)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.DataSource != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; data from: %s\n&quot;, attr.DataSource.Endpoint)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Style != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; style: %s&quot;, *attr.Style.Theme)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if len(attr.Style.Classes) &gt; 0 {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; classes: %v&quot;, attr.Style.Classes)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Pagination != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; pagination: enabled&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Pagination.PageSize != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; size %d&quot;, *attr.Pagination.PageSize)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Filters != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; filters: &quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;for i, filter := range attr.Filters.Filters {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if i &gt; 0 {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;, &quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;%s as %s&quot;, filter.Field, filter.Type)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if filter.Label != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; (%s)&quot;, *filter.Label)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Validation {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; validation: enabled\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;}&#10;&#9;&#9;}&#10;&#9;}&#10;}&#10;" />
<option name="updatedContent" value="package main&#10;&#10;import (&#10;&#9;&quot;fmt&quot;&#10;&#9;&quot;io/ioutil&quot;&#10;&#9;&quot;masonry/lang&quot;&#10;)&#10;&#10;func main() {&#10;&#9;// Read the example.masonry file&#10;&#9;content, err := ioutil.ReadFile(&quot;example.masonry&quot;)&#10;&#9;if err != nil {&#10;&#9;&#9;fmt.Printf(&quot;Error reading example.masonry: %v\n&quot;, err)&#10;&#9;&#9;return&#10;&#9;}&#10;&#10;&#9;input := string(content)&#10;&#10;&#9;ast, err := lang.ParseInput(input)&#10;&#9;if err != nil {&#10;&#9;&#9;fmt.Printf(&quot;Error: %v\n&quot;, err)&#10;&#9;} else {&#10;&#9;&#9;fmt.Printf(&quot; Successfully parsed complete DSL with pages!\n\n&quot;)&#10;&#10;&#9;&#9;for _, def := range ast.Definitions {&#10;&#9;&#9;&#9;if def.Server != nil {&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Server: %s\n&quot;, def.Server.Name)&#10;&#9;&#9;&#9;&#9;for _, setting := range def.Server.Settings {&#10;&#9;&#9;&#9;&#9;&#9;if setting.Host != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; host: %s\n&quot;, *setting.Host)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;if setting.Port != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; port: %d\n&quot;, *setting.Port)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;}&#10;&#10;&#9;&#9;&#9;if def.Entity != nil {&#10;&#9;&#9;&#9;&#9;entity := def.Entity&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Entity: %s&quot;, entity.Name)&#10;&#9;&#9;&#9;&#9;if entity.Description != nil {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; - %s&quot;, *entity.Description)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#10;&#9;&#9;&#9;&#9;for _, field := range entity.Fields {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; %s: %s&quot;, field.Name, field.Type)&#10;&#9;&#9;&#9;&#9;&#9;if field.Required {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; (required)&quot;)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;if field.Unique {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; (unique)&quot;)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;if field.Default != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; default=%s&quot;, *field.Default)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;}&#10;&#10;&#9;&#9;&#9;if def.Endpoint != nil {&#10;&#9;&#9;&#9;&#9;endpoint := def.Endpoint&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Endpoint: %s %s&quot;, endpoint.Method, endpoint.Path)&#10;&#9;&#9;&#9;&#9;if endpoint.Entity != nil {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; (for %s)&quot;, *endpoint.Entity)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;if endpoint.Description != nil {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; - %s&quot;, *endpoint.Description)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;if endpoint.Auth {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; [AUTH]&quot;)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n\n&quot;)&#10;&#9;&#9;&#9;}&#10;&#10;&#9;&#9;&#9;if def.Page != nil {&#10;&#9;&#9;&#9;&#9;page := def.Page&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Page: %s at %s&quot;, page.Name, page.Path)&#10;&#9;&#9;&#9;&#9;if page.Title != nil {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; - %s&quot;, *page.Title)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;if page.Auth {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; [AUTH]&quot;)&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Layout: %s\n&quot;, page.Layout)&#10;&#10;&#9;&#9;&#9;&#9;for _, meta := range page.Meta {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Meta %s: %s\n&quot;, meta.Name, meta.Content)&#10;&#9;&#9;&#9;&#9;}&#10;&#10;&#9;&#9;&#9;&#9;for _, comp := range page.Components {&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; Component: %s&quot;, comp.Type)&#10;&#9;&#9;&#9;&#9;&#9;if comp.Entity != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; for %s&quot;, *comp.Entity)&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#10;&#9;&#9;&#9;&#9;&#9;for _, attr := range comp.Config {&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Fields != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; fields: %v\n&quot;, attr.Fields.Fields)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Actions != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; actions: &quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;for i, action := range attr.Actions.Actions {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if i &gt; 0 {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;, &quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;%s&quot;, action.Name)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if action.Endpoint != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; via %s&quot;, *action.Endpoint)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.DataSource != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; data from: %s\n&quot;, attr.DataSource.Endpoint)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Style != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; style: %s&quot;, *attr.Style.Theme)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if len(attr.Style.Classes) &gt; 0 {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; classes: %v&quot;, attr.Style.Classes)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Pagination != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; pagination: enabled&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Pagination.PageSize != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; size %d&quot;, *attr.Pagination.PageSize)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Filters != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; filters: &quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;for i, filter := range attr.Filters.Filters {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if i &gt; 0 {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;, &quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;%s as %s&quot;, filter.Field, filter.Type)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;if filter.Label != nil {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; (%s)&quot;, *filter.Label)&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;&#9;if attr.Validation {&#10;&#9;&#9;&#9;&#9;&#9;&#9;&#9;fmt.Printf(&quot; validation: enabled\n&quot;)&#10;&#9;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;}&#10;&#9;&#9;&#9;&#9;fmt.Printf(&quot;\n&quot;)&#10;&#9;&#9;&#9;}&#10;&#9;&#9;}&#10;&#9;}&#10;}" />
</PendingDiffInfo>
</value>
</entry>
</map>
</option>
</component>
</project>