leap_salesforce 0.2.21 → 0.2.23
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.gitlab-ci.yml +0 -1
- data/.rubocop.yml +1 -1
- data/ChangeLog +8 -0
- data/README.md +36 -1
- data/leap_salesforce.gemspec +1 -1
- data/lib/leap_salesforce/limits.rb +1 -1
- data/lib/leap_salesforce/soql_data/salesforce.rb +10 -0
- data/lib/leap_salesforce/soql_data/soql.rb +7 -3
- data/lib/leap_salesforce/soql_data/soql_global_data.rb +2 -2
- data/lib/leap_salesforce/soql_data/soql_global_object_data.rb +11 -2
- data/lib/leap_salesforce/soql_data/soql_handler.rb +1 -0
- data/lib/leap_salesforce/version.rb +1 -1
- data/lib/leap_salesforce.rb +1 -0
- metadata +5 -11
- data/.idea/dictionaries/iqa.xml +0 -11
- data/.idea/dictionaries/samuelgarratt.xml +0 -7
- data/.idea/markdown-exported-files.xml +0 -8
- data/.idea/markdown-navigator/profiles_settings.xml +0 -3
- data/.idea/markdown-navigator.xml +0 -86
- data/.idea/misc.xml +0 -13
- data/.idea/modules.xml +0 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: da79723306cce1184458cea71bcd195548c701f48fa3de87961d2d95becc99d4
|
4
|
+
data.tar.gz: 587308a13bfd4164e27638c82ee8adc59a833165aaeb3561b26b17e944ab455e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eeb1dfacd0c1812b5637c7709d34303a7e852e308f87d8c789e6993aecf9ab3261a3c90df42cdde17d49ed337b14ac5c0a00998de639fc8bd98b2617150a2a9e
|
7
|
+
data.tar.gz: 0d5ca787cdebd092f3a21c1489d57b56f0236272740fe1129e945729cda776eea007f66b2e1b021a5b217db9c28f6c696fa7836f9df841cb89cdb4049239449d
|
data/.gitignore
CHANGED
data/.gitlab-ci.yml
CHANGED
data/.rubocop.yml
CHANGED
data/ChangeLog
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
Version 0.2.23
|
2
|
+
* Enhancement
|
3
|
+
* Raise better error when could not find record using query
|
4
|
+
|
5
|
+
Version 0.2.22
|
6
|
+
* Enhancement
|
7
|
+
* New Salesforce module to make it more intuitive to inquire about Salesforce with `Salesforce.limits`
|
8
|
+
|
1
9
|
Version 0.2.21
|
2
10
|
* Enhancement
|
3
11
|
* Remove enums that are no longer present on entities due to metadata changing to create_enums task
|
data/README.md
CHANGED
@@ -46,6 +46,8 @@ The benefits of an open source tool like this are:
|
|
46
46
|
* [Setup scripts](#setup-scripts)
|
47
47
|
* [Changing environment](#changing-environment)
|
48
48
|
* [Test Users](#test-users)
|
49
|
+
* [Advanced](#advanced)
|
50
|
+
* [Understanding how request is built](#understanding-how-request-is-built)
|
49
51
|
* [CRUD of data](#crud-of-data)
|
50
52
|
* [Creating entities](#creating-entities)
|
51
53
|
* [Reading entities](#reading-entities)
|
@@ -239,6 +241,23 @@ LeapSalesforce.api_user = LeapSalesforce::Users.where username: /admin/
|
|
239
241
|
LeapSalesforce.api_user = LeapSalesforce::Users.where description: /System Admin/
|
240
242
|
```
|
241
243
|
|
244
|
+
#### Advanced
|
245
|
+
|
246
|
+
Topics in here for understanding how things work behind the scenes and are not necessary for simple
|
247
|
+
use of this gem.
|
248
|
+
|
249
|
+
##### Understanding how request is built
|
250
|
+
|
251
|
+
###### Creating entities
|
252
|
+
|
253
|
+
When creating entities, the convention is that the accessors defined by the `soql_element` that are
|
254
|
+
auto-generated by the `leaps:create_soql_objects` rake task are used.
|
255
|
+
These methods internally call the `[]=` method to set values that will be sent in the POST request.
|
256
|
+
This method can be used directly with the backend name. E.g, `contact[:FieldName] = 'Value'`
|
257
|
+
|
258
|
+
This method in turn sets a value of the `@override_parameters[:body]` variable within the entity.
|
259
|
+
The value of request body can be interrogated with `entity.request_parameters.body`.
|
260
|
+
|
242
261
|
### CRUD of data
|
243
262
|
|
244
263
|
To work data in Salesforce, an object inheriting from the `SoqlData` class is always used. The idea is
|
@@ -326,6 +345,21 @@ example:
|
|
326
345
|
@contact = Contact.create
|
327
346
|
```
|
328
347
|
|
348
|
+
##### Composite creation
|
349
|
+
|
350
|
+
When creating bulk data (e.g, data with related fields), it's faster to use the composite API.
|
351
|
+
|
352
|
+
See `spec/integration/composite_spec.rb` for an example of how to do this. This will be built into
|
353
|
+
this gem more in the future (so that composite requests are made automatically).
|
354
|
+
|
355
|
+
Following is an example of the time difference for just putting 2 requests into one request.
|
356
|
+
|
357
|
+
Create Account: 0.96s
|
358
|
+
Create Contact linked to this account: 0.75s
|
359
|
+
Total: 1.7s
|
360
|
+
|
361
|
+
Create Contact and account using Composite: 1.24s
|
362
|
+
|
329
363
|
#### Reading entities
|
330
364
|
##### Retrieving entities
|
331
365
|
To retrieve an entity, the `find` method can be called on the class for the object required. For example
|
@@ -524,4 +558,5 @@ Everyone interacting in the LeapSalesforce project’s codebases, issue trackers
|
|
524
558
|
|
525
559
|
## References
|
526
560
|
|
527
|
-
|
561
|
+
* Presentation on this library [here](https://gitpitch.com/leap-dojo/leap_salesforce?grs=gitlab)
|
562
|
+
* Example of this library within a CI/CD pipeline [here](https://gitlab.com/iqa_public/labs/salesforce_cicd_demo)
|
data/leap_salesforce.gemspec
CHANGED
@@ -42,6 +42,6 @@ It reads the Metadata from Salesforce and creates the foundation for API tests.'
|
|
42
42
|
spec.add_dependency 'require_all'
|
43
43
|
spec.add_dependency 'rubocop'
|
44
44
|
spec.add_dependency 'simplecov'
|
45
|
-
spec.add_dependency 'soaspec', '>= 0.3.
|
45
|
+
spec.add_dependency 'soaspec', '>= 0.3.10' # Version can send payload for :delete method
|
46
46
|
spec.add_dependency 'thor'
|
47
47
|
end
|
@@ -7,7 +7,7 @@ module LeapSalesforce
|
|
7
7
|
# @param [Symbol, String] limit_name Name of limit to find remaining amount for
|
8
8
|
# @return [Integer] Finds remaining amount for a Salesforce limit
|
9
9
|
def remaining_for(limit_name)
|
10
|
-
|
10
|
+
Salesforce.limits[limit_name]['Remaining']
|
11
11
|
end
|
12
12
|
end
|
13
13
|
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'soql_global_data'
|
4
|
+
|
5
|
+
# ApiService that interacts with Salesforce via the API globally.
|
6
|
+
# For interacts that are specific to an object, use a class inheriting from SoqlData
|
7
|
+
# See SoqlGlobalData for details on how it's used
|
8
|
+
module Salesforce
|
9
|
+
extend SoqlGlobalData
|
10
|
+
end
|
@@ -3,16 +3,19 @@
|
|
3
3
|
module LeapSalesforce
|
4
4
|
# Handles interaction with Soql, mapping ruby to soql query strings
|
5
5
|
class Soql
|
6
|
-
# @return [
|
6
|
+
# @return [SoqlData] Soql table
|
7
7
|
attr_accessor :soql_table
|
8
8
|
|
9
|
+
# @param [SoqlData] soql_table Object mapping to a Salesforce table
|
9
10
|
def initialize(soql_table)
|
10
11
|
self.soql_table = soql_table
|
11
12
|
@default_filter = soql_table.instance_variable_get(:@default_filter)
|
12
13
|
@soql_object_name = soql_table.soql_object_name
|
13
14
|
end
|
14
15
|
|
15
|
-
#
|
16
|
+
# Find the Salesforce object using the lookup query provided.
|
17
|
+
# When id is returned it will look up the id directly, otherwise it will return an
|
18
|
+
# object referring to the list of results returned
|
16
19
|
# @return [> SoqlData] SoqlData object that is the result of looking up id based on lookup criteria
|
17
20
|
def lookup_id(lookup)
|
18
21
|
teardown = lookup.delete(:teardown)
|
@@ -33,6 +36,7 @@ module LeapSalesforce
|
|
33
36
|
"SELECT Id FROM #{@soql_object_name} #{soql_lookup_filter(lookup)}"
|
34
37
|
end
|
35
38
|
|
39
|
+
# Perform SOQL query against Salesforce
|
36
40
|
# Url encoding needs to be used when searching for special characters (+ => '%2B')
|
37
41
|
# (see https://www.w3schools.com/tags/ref_urlencode.asp)
|
38
42
|
# @param [String] soql_query String representing SOQL query
|
@@ -56,7 +60,7 @@ module LeapSalesforce
|
|
56
60
|
def data_from_url(url, lookup)
|
57
61
|
soql_table.new("Id at #{url}", method: :get, suburl: url)
|
58
62
|
rescue NoElementAtPath
|
59
|
-
raise NoElementAtPath, "No result found for #{lookup} under user #{LeapSalesforce.api_user}"
|
63
|
+
raise NoElementAtPath, "No result found for '#{lookup}' under user #{LeapSalesforce.api_user}"
|
60
64
|
end
|
61
65
|
|
62
66
|
# For dates (ending with .000Z), query is always greater than
|
@@ -9,7 +9,7 @@ module SoqlGlobalData
|
|
9
9
|
# SoqlData.limits["['Conga Composer - EU']"]
|
10
10
|
# @return [Exchange] Limits of Salesforce ORG
|
11
11
|
def limits
|
12
|
-
@limits ||= new("#{self} limits", method: :get, suburl: 'limits/')
|
12
|
+
@limits ||= SoqlData.new("#{self} limits", method: :get, suburl: 'limits/')
|
13
13
|
end
|
14
14
|
|
15
15
|
# Describe all salesforce objects (this returns BIG response)
|
@@ -23,6 +23,6 @@ module SoqlGlobalData
|
|
23
23
|
# SoqlData.global_describe['sobjects'].find_all { |obj| obj['label'].include? 'File' }.collect { |f| f['name'] }
|
24
24
|
# @return [Exchange] Global describe of salesforce Objects
|
25
25
|
def global_describe
|
26
|
-
@global_describe ||= new('Global describe of sobjects', method: :get, suburl: 'sobjects/')
|
26
|
+
@global_describe ||= SoqlData.new('Global describe of sobjects', method: :get, suburl: 'sobjects/')
|
27
27
|
end
|
28
28
|
end
|
@@ -31,7 +31,13 @@ module SoqlGlobalObjectData
|
|
31
31
|
# @return [< SoqlData] Instance of itself storing reference to found object
|
32
32
|
def find(lookup = {})
|
33
33
|
id_lookup = soql.lookup_id lookup
|
34
|
-
|
34
|
+
begin
|
35
|
+
lookup.key?(:Id) ? id_lookup : soql.data_from_url(id_lookup['$..url'], lookup)
|
36
|
+
rescue NoElementAtPath => e
|
37
|
+
raise e unless e.message.include?('"totalSize":0')
|
38
|
+
|
39
|
+
raise LeapSalesforce::RequestError, "Could not find #{self} using #{lookup}"
|
40
|
+
end
|
35
41
|
end
|
36
42
|
|
37
43
|
# @return [LeapSalesforce::Soql] Object to handle Soql interactions
|
@@ -144,13 +150,16 @@ module SoqlGlobalObjectData
|
|
144
150
|
delete
|
145
151
|
end
|
146
152
|
|
153
|
+
# Define a mapping between a ruby friendly name to reference field and Salesforce backend name
|
154
|
+
# @param [Symbol, String] name Name of accessor to refer to field/element with
|
155
|
+
# @param [String] backend_name Name of Salesforce field
|
147
156
|
def soql_element(name, backend_name)
|
148
157
|
# Either set the element (if creating a new record) or update the object
|
149
158
|
# @param [String] new_value Value to update record to
|
150
159
|
define_method("#{name}=") do |new_value|
|
151
160
|
if @response # Performing an update
|
152
161
|
@response = update(backend_name => new_value).response
|
153
|
-
else # Setting value on creating new object
|
162
|
+
else # Setting value on creating new object. Uses id of object if SoqlData object passed
|
154
163
|
self[backend_name] = new_value.class < SoqlData ? new_value.id : new_value
|
155
164
|
end
|
156
165
|
end
|
@@ -4,6 +4,7 @@ require 'soaspec'
|
|
4
4
|
|
5
5
|
# Handles basic Soql interactions. These are done through classes that are tied to this handler, i.e, the SoqlData
|
6
6
|
# class.
|
7
|
+
# This is a service that handles all interactions with the API
|
7
8
|
# Credentials are stored either in 'config/credentials' folder or via environment variables
|
8
9
|
# To check out SOQL SCHEMA go to workbench.developerforce.com. Use Sandbox and login
|
9
10
|
class SoqlHandler < Soaspec::RestHandler
|
data/lib/leap_salesforce.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: leap_salesforce
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.23
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- IQA
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2020-
|
12
|
+
date: 2020-03-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -241,14 +241,14 @@ dependencies:
|
|
241
241
|
requirements:
|
242
242
|
- - ">="
|
243
243
|
- !ruby/object:Gem::Version
|
244
|
-
version: 0.3.
|
244
|
+
version: 0.3.10
|
245
245
|
type: :runtime
|
246
246
|
prerelease: false
|
247
247
|
version_requirements: !ruby/object:Gem::Requirement
|
248
248
|
requirements:
|
249
249
|
- - ">="
|
250
250
|
- !ruby/object:Gem::Version
|
251
|
-
version: 0.3.
|
251
|
+
version: 0.3.10
|
252
252
|
- !ruby/object:Gem::Dependency
|
253
253
|
name: thor
|
254
254
|
requirement: !ruby/object:Gem::Requirement
|
@@ -276,13 +276,6 @@ extra_rdoc_files: []
|
|
276
276
|
files:
|
277
277
|
- ".gitignore"
|
278
278
|
- ".gitlab-ci.yml"
|
279
|
-
- ".idea/dictionaries/iqa.xml"
|
280
|
-
- ".idea/dictionaries/samuelgarratt.xml"
|
281
|
-
- ".idea/markdown-exported-files.xml"
|
282
|
-
- ".idea/markdown-navigator.xml"
|
283
|
-
- ".idea/markdown-navigator/profiles_settings.xml"
|
284
|
-
- ".idea/misc.xml"
|
285
|
-
- ".idea/modules.xml"
|
286
279
|
- ".idea/vcs.xml"
|
287
280
|
- ".leap_salesforce.yml"
|
288
281
|
- ".rspec"
|
@@ -343,6 +336,7 @@ files:
|
|
343
336
|
- lib/leap_salesforce/soql_data/common_enum_methods.rb
|
344
337
|
- lib/leap_salesforce/soql_data/data_relationships.rb
|
345
338
|
- lib/leap_salesforce/soql_data/meta_data_handler.rb
|
339
|
+
- lib/leap_salesforce/soql_data/salesforce.rb
|
346
340
|
- lib/leap_salesforce/soql_data/soql.rb
|
347
341
|
- lib/leap_salesforce/soql_data/soql_data.rb
|
348
342
|
- lib/leap_salesforce/soql_data/soql_enum.rb
|
data/.idea/dictionaries/iqa.xml
DELETED
@@ -1,86 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<project version="4">
|
3
|
-
<component name="MarkdownProjectSettings" wasCopied="true">
|
4
|
-
<PreviewSettings splitEditorLayout="SPLIT" splitEditorPreview="PREVIEW" useGrayscaleRendering="false" zoomFactor="1.0" maxImageWidth="0" showGitHubPageIfSynced="false" allowBrowsingInPreview="false" synchronizePreviewPosition="true" highlightPreviewType="NONE" highlightFadeOut="5" highlightOnTyping="true" synchronizeSourcePosition="true" verticallyAlignSourceAndPreviewSyncPosition="true" showSearchHighlightsInPreview="false" showSelectionInPreview="true" openRemoteLinks="true" replaceUnicodeEmoji="false" lastLayoutSetsDefault="false">
|
5
|
-
<PanelProvider>
|
6
|
-
<provider providerId="com.vladsch.idea.multimarkdown.editor.swing.html.panel" providerName="Default - Swing" />
|
7
|
-
</PanelProvider>
|
8
|
-
</PreviewSettings>
|
9
|
-
<ParserSettings gitHubSyntaxChange="false" emojiShortcuts="0" emojiImages="0">
|
10
|
-
<PegdownExtensions>
|
11
|
-
<option name="ABBREVIATIONS" value="false" />
|
12
|
-
<option name="ANCHORLINKS" value="true" />
|
13
|
-
<option name="ASIDE" value="false" />
|
14
|
-
<option name="ATXHEADERSPACE" value="true" />
|
15
|
-
<option name="AUTOLINKS" value="true" />
|
16
|
-
<option name="DEFINITIONS" value="false" />
|
17
|
-
<option name="DEFINITION_BREAK_DOUBLE_BLANK_LINE" value="false" />
|
18
|
-
<option name="FENCED_CODE_BLOCKS" value="true" />
|
19
|
-
<option name="FOOTNOTES" value="false" />
|
20
|
-
<option name="HARDWRAPS" value="false" />
|
21
|
-
<option name="HTML_DEEP_PARSER" value="false" />
|
22
|
-
<option name="INSERTED" value="false" />
|
23
|
-
<option name="QUOTES" value="false" />
|
24
|
-
<option name="RELAXEDHRULES" value="true" />
|
25
|
-
<option name="SMARTS" value="false" />
|
26
|
-
<option name="STRIKETHROUGH" value="true" />
|
27
|
-
<option name="SUBSCRIPT" value="false" />
|
28
|
-
<option name="SUPERSCRIPT" value="false" />
|
29
|
-
<option name="SUPPRESS_HTML_BLOCKS" value="false" />
|
30
|
-
<option name="SUPPRESS_INLINE_HTML" value="false" />
|
31
|
-
<option name="TABLES" value="true" />
|
32
|
-
<option name="TASKLISTITEMS" value="true" />
|
33
|
-
<option name="TOC" value="false" />
|
34
|
-
<option name="WIKILINKS" value="true" />
|
35
|
-
</PegdownExtensions>
|
36
|
-
<ParserOptions>
|
37
|
-
<option name="ADMONITION_EXT" value="false" />
|
38
|
-
<option name="ATTRIBUTES_EXT" value="false" />
|
39
|
-
<option name="COMMONMARK_LISTS" value="true" />
|
40
|
-
<option name="DUMMY" value="false" />
|
41
|
-
<option name="EMOJI_SHORTCUTS" value="true" />
|
42
|
-
<option name="ENUMERATED_REFERENCES_EXT" value="false" />
|
43
|
-
<option name="FLEXMARK_FRONT_MATTER" value="false" />
|
44
|
-
<option name="GFM_LOOSE_BLANK_LINE_AFTER_ITEM_PARA" value="false" />
|
45
|
-
<option name="GFM_TABLE_RENDERING" value="true" />
|
46
|
-
<option name="GITBOOK_URL_ENCODING" value="false" />
|
47
|
-
<option name="GITHUB_LISTS" value="false" />
|
48
|
-
<option name="GITHUB_WIKI_LINKS" value="true" />
|
49
|
-
<option name="GITLAB_EXT" value="false" />
|
50
|
-
<option name="GITLAB_MATH_EXT" value="false" />
|
51
|
-
<option name="GITLAB_MERMAID_EXT" value="false" />
|
52
|
-
<option name="HEADER_ID_NON_ASCII_TO_LOWERCASE" value="false" />
|
53
|
-
<option name="HEADER_ID_NO_DUPED_DASHES" value="false" />
|
54
|
-
<option name="JEKYLL_FRONT_MATTER" value="false" />
|
55
|
-
<option name="MACROS_EXT" value="false" />
|
56
|
-
<option name="NO_TEXT_ATTRIBUTES" value="false" />
|
57
|
-
<option name="PARSE_HTML_ANCHOR_ID" value="false" />
|
58
|
-
<option name="PLANTUML_FENCED_CODE" value="false" />
|
59
|
-
<option name="PUML_FENCED_CODE" value="false" />
|
60
|
-
<option name="SIM_TOC_BLANK_LINE_SPACER" value="true" />
|
61
|
-
</ParserOptions>
|
62
|
-
</ParserSettings>
|
63
|
-
<HtmlSettings headerTopEnabled="false" headerBottomEnabled="false" bodyTopEnabled="false" bodyBottomEnabled="false" embedUrlContent="false" addPageHeader="true" embedImages="false" embedHttpImages="false" imageUriSerials="false" addDocTypeHtml="true" noParaTags="false" plantUmlConversion="0" mathConversion="-1">
|
64
|
-
<GeneratorProvider>
|
65
|
-
<provider providerId="com.vladsch.idea.multimarkdown.editor.swing.html.generator" providerName="Default Swing HTML Generator" />
|
66
|
-
</GeneratorProvider>
|
67
|
-
<headerTop />
|
68
|
-
<headerBottom />
|
69
|
-
<bodyTop />
|
70
|
-
<bodyBottom />
|
71
|
-
</HtmlSettings>
|
72
|
-
<CssSettings previewScheme="UI_SCHEME" cssUri="" isCssUriEnabled="false" isCssUriSerial="true" isCssTextEnabled="false" isDynamicPageWidth="true">
|
73
|
-
<StylesheetProvider>
|
74
|
-
<provider providerId="com.vladsch.idea.multimarkdown.editor.swing.html.css" providerName="Default Swing Stylesheet" />
|
75
|
-
</StylesheetProvider>
|
76
|
-
<ScriptProviders />
|
77
|
-
<cssText />
|
78
|
-
<cssUriHistory />
|
79
|
-
</CssSettings>
|
80
|
-
<AnnotatorSettings targetHasSpaces="true" linkCaseMismatch="true" wikiCaseMismatch="true" wikiLinkHasDashes="true" notUnderWikiHome="true" targetNotWikiPageExt="true" notUnderSourceWikiHome="true" targetNameHasAnchor="true" targetPathHasAnchor="true" wikiLinkHasSlash="true" wikiLinkHasSubdir="true" wikiLinkHasOnlyAnchor="true" linkTargetsWikiHasExt="true" linkTargetsWikiHasBadExt="true" notUnderSameRepo="true" targetNotUnderVcs="false" linkNeedsExt="true" linkHasBadExt="true" linkTargetNeedsExt="true" linkTargetHasBadExt="true" wikiLinkNotInWiki="true" imageTargetNotInRaw="true" repoRelativeAcrossVcsRoots="true" multipleWikiTargetsMatch="true" unresolvedLinkReference="true" linkIsIgnored="true" anchorIsIgnored="true" anchorIsUnresolved="true" anchorLineReferenceIsUnresolved="true" anchorLineReferenceFormat="true" anchorHasDuplicates="true" abbreviationDuplicates="true" abbreviationNotUsed="true" attributeIdDuplicateDefinition="true" attributeIdNotUsed="true" footnoteDuplicateDefinition="true" footnoteUnresolved="true" footnoteDuplicates="true" footnoteNotUsed="true" macroDuplicateDefinition="true" macroUnresolved="true" macroDuplicates="true" macroNotUsed="true" referenceDuplicateDefinition="true" referenceUnresolved="true" referenceDuplicates="true" referenceNotUsed="true" referenceUnresolvedNumericId="true" enumRefDuplicateDefinition="true" enumRefUnresolved="true" enumRefDuplicates="true" enumRefNotUsed="true" enumRefLinkUnresolved="true" enumRefLinkDuplicates="true" simTocUpdateNeeded="true" simTocTitleSpaceNeeded="true" />
|
81
|
-
<HtmlExportSettings updateOnSave="false" parentDir="" targetDir="" cssDir="css" scriptDir="js" plainHtml="false" imageDir="" copyLinkedImages="false" imageUniquifyType="0" targetPathType="2" targetExt="" useTargetExt="false" noCssNoScripts="false" useElementStyleAttribute="false" linkToExportedHtml="true" exportOnSettingsChange="true" regenerateOnProjectOpen="false" linkFormatType="HTTP_ABSOLUTE" />
|
82
|
-
<LinkMapSettings>
|
83
|
-
<textMaps />
|
84
|
-
</LinkMapSettings>
|
85
|
-
</component>
|
86
|
-
</project>
|
data/.idea/misc.xml
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<project version="4">
|
3
|
-
<component name="JavaScriptSettings">
|
4
|
-
<option name="languageLevel" value="ES6" />
|
5
|
-
</component>
|
6
|
-
<component name="ProjectPlainTextFileTypeManager">
|
7
|
-
<file url="file://$PROJECT_DIR$/lib/leap_salesforce/generator/templates/picklist.rb.erb" />
|
8
|
-
<file url="file://$PROJECT_DIR$/lib/leap_salesforce/generator/templates/soql_object.rb.erb" />
|
9
|
-
<file url="file://$PROJECT_DIR$/lib/leap_salesforce/generator/templates/soql_object_field_names.rb.erb" />
|
10
|
-
<file url="file://$PROJECT_DIR$/lib/leap_salesforce/generator/templates/spec/spec_helper.rb.erb" />
|
11
|
-
</component>
|
12
|
-
<component name="ProjectRootManager" version="2" project-jdk-name="RVM: ruby-2.5.0" project-jdk-type="RUBY_SDK" />
|
13
|
-
</project>
|
data/.idea/modules.xml
DELETED
@@ -1,8 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<project version="4">
|
3
|
-
<component name="ProjectModuleManager">
|
4
|
-
<modules>
|
5
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/leap-salesforce.iml" filepath="$PROJECT_DIR$/.idea/leap-salesforce.iml" />
|
6
|
-
</modules>
|
7
|
-
</component>
|
8
|
-
</project>
|