mswallet 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +64 -0
- data/.travis.yml +14 -0
- data/Gemfile +5 -0
- data/Gemfile.lock +67 -0
- data/LICENSE.txt +22 -0
- data/README.md +91 -0
- data/README.ru.md +90 -0
- data/Rakefile +1 -0
- data/WalletItem.xsd +243 -0
- data/lib/mswallet.rb +14 -0
- data/lib/mswallet/pass.rb +187 -0
- data/lib/mswallet/version.rb +5 -0
- data/lib/rack/mswallet_rack.rb +52 -0
- data/mswallet.gemspec +31 -0
- data/spec/mswallet/mswallet_spec.rb +8 -0
- data/spec/mswallet/pass_spec.rb +190 -0
- data/spec/rack/mswallet_rack_spec.rb +139 -0
- data/spec/spec_helper.rb +42 -0
- metadata +194 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 0b1448c6184963a4836236f799138700c664c0b3
|
4
|
+
data.tar.gz: 6d70a6208b0fb6c7c7684eb861d14c592abbc141
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: efcc11d94594670ebe453ddb7e4c8a6170db0b2fb2b8e7073e74bfb9f8807c9ab348bda3592c7c0f195c16e40ca1100f5a8cfafd5b58805544c7e4e15a6248b2
|
7
|
+
data.tar.gz: 89d4b32222ef2736c461f17b78ee8899b7e36bfefaf06428b1e1ef9be2a8283a17934fa9c79038a8cb07549deffa286a005c52eb7f8b66b5a6932cbf96c3dcc8
|
data/.gitignore
ADDED
@@ -0,0 +1,64 @@
|
|
1
|
+
*.rbc
|
2
|
+
capybara-*.html
|
3
|
+
.rspec
|
4
|
+
/log
|
5
|
+
/tmp
|
6
|
+
/db/*.sqlite3
|
7
|
+
/db/*.sqlite3-journal
|
8
|
+
/public/system
|
9
|
+
/public/uploads
|
10
|
+
/coverage/
|
11
|
+
/spec/tmp
|
12
|
+
**.orig
|
13
|
+
rerun.txt
|
14
|
+
pickle-email-*.html
|
15
|
+
|
16
|
+
# TODO Comment out these rules if you are OK with secrets being uploaded to the repo
|
17
|
+
config/initializers/secret_token.rb
|
18
|
+
config/secrets.yml
|
19
|
+
|
20
|
+
## Environment normalisation:
|
21
|
+
/.bundle
|
22
|
+
/vendor/bundle
|
23
|
+
|
24
|
+
# these should all be checked in to normalise the environment:
|
25
|
+
# Gemfile.lock, .ruby-version, .ruby-gemset
|
26
|
+
|
27
|
+
# unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
|
28
|
+
.rvmrc
|
29
|
+
|
30
|
+
# if using bower-rails ignore default bower_components path bower.json files
|
31
|
+
/vendor/assets/bower_components
|
32
|
+
*.bowerrc
|
33
|
+
bower.json
|
34
|
+
|
35
|
+
# Ignore pow environment settings
|
36
|
+
.powenv
|
37
|
+
|
38
|
+
*.gem
|
39
|
+
/.config
|
40
|
+
/InstalledFiles
|
41
|
+
/pkg/
|
42
|
+
/spec/reports/
|
43
|
+
/test/tmp/
|
44
|
+
/test/version_tmp/
|
45
|
+
|
46
|
+
## Specific to RubyMotion:
|
47
|
+
.dat*
|
48
|
+
.repl_history
|
49
|
+
build/
|
50
|
+
|
51
|
+
## Documentation cache and generated files:
|
52
|
+
/.yardoc/
|
53
|
+
/_yardoc/
|
54
|
+
/doc/
|
55
|
+
/rdoc/
|
56
|
+
|
57
|
+
## Environment normalisation:
|
58
|
+
/lib/bundler/man/
|
59
|
+
|
60
|
+
|
61
|
+
/.idea
|
62
|
+
/cert
|
63
|
+
|
64
|
+
/config/*.pem
|
data/.travis.yml
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
language: ruby
|
2
|
+
cache: bundler
|
3
|
+
bundler_args: "--binstubs --without documentation --path ../bundle --retry=3 --jobs=3"
|
4
|
+
rvm:
|
5
|
+
- 1.9.2
|
6
|
+
- 1.9.3
|
7
|
+
- 2.0.0
|
8
|
+
- ruby-head
|
9
|
+
# uncomment this line if your project needs to run something other than `rake`:
|
10
|
+
script: bundle exec rspec spec --require spec_helper
|
11
|
+
|
12
|
+
addons:
|
13
|
+
code_climate:
|
14
|
+
repo_token: 37f5ce3b968d143a1fb19e75f504204d5588b6724882b208a910b2ebcf5cb909
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
mswallet (0.0.1)
|
5
|
+
libxml-ruby
|
6
|
+
rack
|
7
|
+
rubyzip (>= 1.0.0)
|
8
|
+
|
9
|
+
GEM
|
10
|
+
remote: https://rubygems.org/
|
11
|
+
specs:
|
12
|
+
codeclimate-test-reporter (0.4.7)
|
13
|
+
simplecov (>= 0.7.1, < 1.0.0)
|
14
|
+
coderay (1.1.0)
|
15
|
+
diff-lcs (1.2.5)
|
16
|
+
docile (1.1.5)
|
17
|
+
libxml-ruby (2.8.0)
|
18
|
+
method_source (0.8.2)
|
19
|
+
multi_json (1.10.1)
|
20
|
+
pry (0.10.1)
|
21
|
+
coderay (~> 1.1.0)
|
22
|
+
method_source (~> 0.8.1)
|
23
|
+
slop (~> 3.4)
|
24
|
+
pry (0.10.1-x64-mingw32)
|
25
|
+
coderay (~> 1.1.0)
|
26
|
+
method_source (~> 0.8.1)
|
27
|
+
slop (~> 3.4)
|
28
|
+
win32console (~> 1.3)
|
29
|
+
rack (1.5.2)
|
30
|
+
rack-test (0.6.3)
|
31
|
+
rack (>= 1.0)
|
32
|
+
rake (10.4.2)
|
33
|
+
rspec (3.2.0)
|
34
|
+
rspec-core (~> 3.2.0)
|
35
|
+
rspec-expectations (~> 3.2.0)
|
36
|
+
rspec-mocks (~> 3.2.0)
|
37
|
+
rspec-core (3.2.0)
|
38
|
+
rspec-support (~> 3.2.0)
|
39
|
+
rspec-expectations (3.2.0)
|
40
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
41
|
+
rspec-support (~> 3.2.0)
|
42
|
+
rspec-mocks (3.2.0)
|
43
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
44
|
+
rspec-support (~> 3.2.0)
|
45
|
+
rspec-support (3.2.1)
|
46
|
+
rubyzip (1.1.7)
|
47
|
+
simplecov (0.9.1)
|
48
|
+
docile (~> 1.1.0)
|
49
|
+
multi_json (~> 1.0)
|
50
|
+
simplecov-html (~> 0.8.0)
|
51
|
+
simplecov-html (0.8.0)
|
52
|
+
slop (3.6.0)
|
53
|
+
win32console (1.3.2)
|
54
|
+
|
55
|
+
PLATFORMS
|
56
|
+
ruby
|
57
|
+
x64-mingw32
|
58
|
+
|
59
|
+
DEPENDENCIES
|
60
|
+
bundler
|
61
|
+
codeclimate-test-reporter
|
62
|
+
mswallet!
|
63
|
+
pry
|
64
|
+
rack-test
|
65
|
+
rake
|
66
|
+
rspec
|
67
|
+
simplecov
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2015 ajieks@vmp.ru
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,91 @@
|
|
1
|
+
[![Build Status](https://travis-ci.org/fuCtor/mswallet.svg)](https://travis-ci.org/fuCtor/mswallet)
|
2
|
+
[![Code Climate](https://codeclimate.com/github/fuCtor/mswallet/badges/gpa.svg)](https://codeclimate.com/github/fuCtor/mswallet)
|
3
|
+
[![Test Coverage](https://codeclimate.com/github/fuCtor/mswallet/badges/coverage.svg)](https://codeclimate.com/github/fuCtor/mswallet)
|
4
|
+
|
5
|
+
# Mswallet
|
6
|
+
|
7
|
+
[Русская версия](https://github.com/fuCtor/mswallet/blob/master/README.ru.md)
|
8
|
+
|
9
|
+
This gem let's you [create a mswallet for Wallet app in WP8+](https://msdn.microsoft.com/en-us/library/dn631256.aspx).
|
10
|
+
|
11
|
+
## Installation
|
12
|
+
|
13
|
+
Include the passbook gem in your project.
|
14
|
+
IE in your Gemfile
|
15
|
+
|
16
|
+
gem 'mswallet'
|
17
|
+
|
18
|
+
and execute:
|
19
|
+
|
20
|
+
$ bundle
|
21
|
+
|
22
|
+
Or manual install:
|
23
|
+
|
24
|
+
$ gem install mswallet
|
25
|
+
|
26
|
+
## Configuration
|
27
|
+
If you want to also support the update endpoint you will also need to include the Rack::MswalletRack middleware. In rails your config will look something like this.
|
28
|
+
|
29
|
+
config.middleware.use Rack::MswalletRack
|
30
|
+
|
31
|
+
Mswallet::Handler are used by default for update request handle. You can set custom class.
|
32
|
+
|
33
|
+
Mswallet.custom_rack_handler = MyCustomHandler
|
34
|
+
|
35
|
+
# или
|
36
|
+
|
37
|
+
Mswallet.configure do |m|
|
38
|
+
m.custom_rack_handler = MyCustomHandler
|
39
|
+
end
|
40
|
+
|
41
|
+
## Usage
|
42
|
+
|
43
|
+
pass = Mswallet::Pass.new
|
44
|
+
|
45
|
+
pass['Kind'] = 'General'
|
46
|
+
pass['Id'] = '00001'
|
47
|
+
|
48
|
+
pass['DisplayName'] = 'Test wallet'
|
49
|
+
pass['IssuerDisplayName'] = 'Test wallet'
|
50
|
+
pass['HeaderColor'] = '#0000FF'
|
51
|
+
pass['BodyColor'] = '#FFFFFF'
|
52
|
+
properties = {}
|
53
|
+
properties['Header'] = {
|
54
|
+
'Property' => [
|
55
|
+
{
|
56
|
+
'Key' => 'Hd1',
|
57
|
+
'Name' => 'Header Text',
|
58
|
+
'Value' => 'Name'
|
59
|
+
},
|
60
|
+
{
|
61
|
+
'Key' => 'Hd2',
|
62
|
+
'Name' => 'Header Text2',
|
63
|
+
'Value' => nil #empty value:  
|
64
|
+
}
|
65
|
+
]
|
66
|
+
}
|
67
|
+
pass['DisplayProperties'] = properties
|
68
|
+
|
69
|
+
pass.add_file name: 'file1', content: 'fileContent1'
|
70
|
+
pass.add_file name: 'file2', content: 'fileContent2'
|
71
|
+
|
72
|
+
pass.add_locale 'ru-RU', { 'hello_world' => 'Привет мир' }
|
73
|
+
|
74
|
+
pass['WebServiceUrl'] = "http://localhost:3000/api"
|
75
|
+
pass['AuthenticationToken'] = 'secret_token'
|
76
|
+
|
77
|
+
mswallet = pass.file
|
78
|
+
send_file mswallet.path, type: 'application/vnd.ms.wallet', disposition: 'attachment', filename: "pass.mswallet"
|
79
|
+
|
80
|
+
# Or a stream
|
81
|
+
|
82
|
+
mswallet = pass.stream
|
83
|
+
send_data mswallet.string, type: 'application/vnd.ms.wallet', disposition: 'attachment', filename: "pass.mswallet"
|
84
|
+
|
85
|
+
## Contributing
|
86
|
+
|
87
|
+
1. Fork it ( http://github.com/fuCtor/mswallet/fork )
|
88
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
89
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
90
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
91
|
+
5. Create new Pull Request
|
data/README.ru.md
ADDED
@@ -0,0 +1,90 @@
|
|
1
|
+
[![Build Status](https://travis-ci.org/fuCtor/mswallet.svg)](https://travis-ci.org/fuCtor/mswallet)
|
2
|
+
[![Code Climate](https://codeclimate.com/github/fuCtor/mswallet/badges/gpa.svg)](https://codeclimate.com/github/fuCtor/mswallet)
|
3
|
+
[![Test Coverage](https://codeclimate.com/github/fuCtor/mswallet/badges/coverage.svg)](https://codeclimate.com/github/fuCtor/mswallet)
|
4
|
+
|
5
|
+
# Mswallet
|
6
|
+
|
7
|
+
[English version](https://github.com/fuCtor/mswallet/blob/master/README.md)
|
8
|
+
|
9
|
+
Гем для [генерации mswallet файлов](https://msdn.microsoft.com/en-us/library/dn631256.aspx) для приложения Кошелек на платформе WP8+.
|
10
|
+
|
11
|
+
## Установка
|
12
|
+
|
13
|
+
Для установки добавьте в ваш Gemfile:
|
14
|
+
|
15
|
+
gem 'mswallet'
|
16
|
+
|
17
|
+
И выполните:
|
18
|
+
|
19
|
+
$ bundle
|
20
|
+
|
21
|
+
Или можете установить вручную:
|
22
|
+
|
23
|
+
$ gem install mswallet
|
24
|
+
|
25
|
+
## Конфигурирование
|
26
|
+
Если вы хотиет поддерживать запросы на обновление карточек, вы можете добавить Rack::PassbookRack к вашим middleware. В Rails это будет выглядеть так:
|
27
|
+
|
28
|
+
config.middleware.use Rack::MswalletRack
|
29
|
+
|
30
|
+
По-умолчанию для обработки запросов используется класс Mswallet::Handler, но вы можете установить свой:
|
31
|
+
|
32
|
+
Mswallet.custom_rack_handler = MyCustomHandler
|
33
|
+
|
34
|
+
# или
|
35
|
+
|
36
|
+
Mswallet.configure do |m|
|
37
|
+
m.custom_rack_handler = MyCustomHandler
|
38
|
+
end
|
39
|
+
|
40
|
+
## Использование
|
41
|
+
|
42
|
+
pass = Mswallet::Pass.new
|
43
|
+
|
44
|
+
pass['Kind'] = 'General'
|
45
|
+
pass['Id'] = '00001'
|
46
|
+
|
47
|
+
pass['DisplayName'] = 'Test wallet'
|
48
|
+
pass['IssuerDisplayName'] = 'Test wallet'
|
49
|
+
pass['HeaderColor'] = '#0000FF'
|
50
|
+
pass['BodyColor'] = '#FFFFFF'
|
51
|
+
properties = {}
|
52
|
+
properties['Header'] = {
|
53
|
+
'Property' => [
|
54
|
+
{
|
55
|
+
'Key' => 'Hd1',
|
56
|
+
'Name' => 'Header Text',
|
57
|
+
'Value' => 'Name'
|
58
|
+
},
|
59
|
+
{
|
60
|
+
'Key' => 'Hd2',
|
61
|
+
'Name' => 'Header Text2',
|
62
|
+
'Value' => nil #пустое значение:  
|
63
|
+
}
|
64
|
+
]
|
65
|
+
}
|
66
|
+
pass['DisplayProperties'] = properties
|
67
|
+
|
68
|
+
pass.add_file name: 'file1', content: 'fileContent1'
|
69
|
+
pass.add_file name: 'file2', content: 'fileContent2'
|
70
|
+
|
71
|
+
pass.add_locale 'ru-RU', { 'hello_world' => 'Привет мир' }
|
72
|
+
|
73
|
+
pass['WebServiceUrl'] = "http://localhost:3000/api"
|
74
|
+
pass['AuthenticationToken'] = 'secret_token'
|
75
|
+
|
76
|
+
mswallet = pass.file
|
77
|
+
send_file mswallet.path, type: 'application/vnd.ms.wallet', disposition: 'attachment', filename: "pass.mswallet"
|
78
|
+
|
79
|
+
# Или потоком
|
80
|
+
|
81
|
+
mswallet = pass.stream
|
82
|
+
send_data mswallet.string, type: 'application/vnd.ms.wallet', disposition: 'attachment', filename: "pass.mswallet"
|
83
|
+
|
84
|
+
## Внесение изменений
|
85
|
+
|
86
|
+
1. Fork it ( http://github.com/fuCtor/mswallet/fork )
|
87
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
88
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
89
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
90
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/WalletItem.xsd
ADDED
@@ -0,0 +1,243 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<schema targetNamespace="http://schemas.microsoft.com/wallet/walletitem"
|
3
|
+
attributeFormDefault="unqualified"
|
4
|
+
elementFormDefault="qualified"
|
5
|
+
xmlns="http://www.w3.org/2001/XMLSchema"
|
6
|
+
xmlns:x="http://schemas.microsoft.com/wallet/walletitem">
|
7
|
+
|
8
|
+
|
9
|
+
<simpleType name="GUID">
|
10
|
+
<annotation>
|
11
|
+
<documentation xml:lang="en">
|
12
|
+
A 128 bit GUID, generally the id of an element.
|
13
|
+
</documentation>
|
14
|
+
</annotation>
|
15
|
+
<restriction base="string">
|
16
|
+
<pattern value="\{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\}"/>
|
17
|
+
</restriction>
|
18
|
+
</simpleType>
|
19
|
+
|
20
|
+
|
21
|
+
<simpleType name="BarcodeSymbology">
|
22
|
+
<restriction base="string">
|
23
|
+
<enumeration value="QR"/>
|
24
|
+
<enumeration value="PDF417"/>
|
25
|
+
<enumeration value="AZTEC"/>
|
26
|
+
<enumeration value="UPCA"/>
|
27
|
+
<enumeration value="UPCE"/>
|
28
|
+
<enumeration value="EAN13"/>
|
29
|
+
<enumeration value="EAN8"/>
|
30
|
+
<enumeration value="ITF"/>
|
31
|
+
<enumeration value="CODE39"/>
|
32
|
+
<enumeration value="CODE128"/>
|
33
|
+
</restriction>
|
34
|
+
</simpleType>
|
35
|
+
|
36
|
+
|
37
|
+
<complexType name="Barcode">
|
38
|
+
<all>
|
39
|
+
<element name="Symbology" type="x:BarcodeSymbology"/>
|
40
|
+
<element name="Value"/>
|
41
|
+
</all>
|
42
|
+
</complexType>
|
43
|
+
|
44
|
+
|
45
|
+
<simpleType name="Color">
|
46
|
+
<restriction base="string">
|
47
|
+
<pattern value="#[0-9a-fA-F]{6}"/>
|
48
|
+
</restriction>
|
49
|
+
</simpleType>
|
50
|
+
|
51
|
+
|
52
|
+
<!-- http://msdn.microsoft.com/en-us/library/1at0z4ew.aspx -->
|
53
|
+
<simpleType name="DateTimeFormat">
|
54
|
+
<restriction base="string">
|
55
|
+
<enumeration value="FullDateTime"/>
|
56
|
+
<enumeration value="LongDate"/>
|
57
|
+
<enumeration value="LongTime"/>
|
58
|
+
<enumeration value="MonthDay"/>
|
59
|
+
<enumeration value="RFC1123"/>
|
60
|
+
<enumeration value="ShortDateTime"/>
|
61
|
+
<enumeration value="ShortDate"/>
|
62
|
+
<enumeration value="ShortTime"/>
|
63
|
+
<enumeration value="YearMonth"/>
|
64
|
+
</restriction>
|
65
|
+
</simpleType>
|
66
|
+
|
67
|
+
|
68
|
+
<simpleType name="Kind">
|
69
|
+
<restriction base="string">
|
70
|
+
<enumeration value="PaymentInstrument"/>
|
71
|
+
<enumeration value="General"/>
|
72
|
+
<enumeration value="Deal"/>
|
73
|
+
<enumeration value="BoardingPass"/>
|
74
|
+
<enumeration value="Ticket"/>
|
75
|
+
<enumeration value="MembershipCard"/>
|
76
|
+
</restriction>
|
77
|
+
</simpleType>
|
78
|
+
|
79
|
+
|
80
|
+
<!-- http://msdn.microsoft.com/en-us/library/dwhawy9k(v=VS.95).aspx -->
|
81
|
+
<simpleType name="NumberFormat">
|
82
|
+
<restriction base="string">
|
83
|
+
<enumeration value="Decimal"/>
|
84
|
+
<enumeration value="Percent"/>
|
85
|
+
<enumeration value="Exponential"/>
|
86
|
+
<enumeration value="Currency"/>
|
87
|
+
</restriction>
|
88
|
+
</simpleType>
|
89
|
+
|
90
|
+
|
91
|
+
<simpleType name="ColorFormat">
|
92
|
+
<restriction base="string">
|
93
|
+
<pattern value="#[\dA-F]{6}"/>
|
94
|
+
</restriction>
|
95
|
+
</simpleType>
|
96
|
+
|
97
|
+
|
98
|
+
<simpleType name="WebServiceUrl">
|
99
|
+
<restriction base="anyURI">
|
100
|
+
<pattern value="http[s]?://.*"/>
|
101
|
+
</restriction>
|
102
|
+
</simpleType>
|
103
|
+
|
104
|
+
|
105
|
+
<complexType name="Location">
|
106
|
+
<all>
|
107
|
+
<element name="Latitude" type="double" minOccurs="1"/>
|
108
|
+
<element name="Longitude" type="double" minOccurs="1"/>
|
109
|
+
<element name="Altitude" type="double" minOccurs="0"/>
|
110
|
+
<element name="DisplayMessage" minOccurs="0"/>
|
111
|
+
</all>
|
112
|
+
</complexType>
|
113
|
+
|
114
|
+
|
115
|
+
<complexType name="Property">
|
116
|
+
<all>
|
117
|
+
<element name="Key"/>
|
118
|
+
<element name="Name"/>
|
119
|
+
<element name="Value"/>
|
120
|
+
<element name="AutoDetectLinks" minOccurs="0"/>
|
121
|
+
<element name="DateTimeFormat" type="x:DateTimeFormat" minOccurs="0"/>
|
122
|
+
<element name="NumberFormat" type="x:NumberFormat" minOccurs="0"/>
|
123
|
+
<element name="CurrencyCode" minOccurs="0"/>
|
124
|
+
<element name="SummaryViewPosition" type="integer" minOccurs="0"/>
|
125
|
+
</all>
|
126
|
+
</complexType>
|
127
|
+
|
128
|
+
|
129
|
+
<complexType name="RelevantDate">
|
130
|
+
<all>
|
131
|
+
<element name="Date" type="dateTime" minOccurs="1"/>
|
132
|
+
<element name="RelevantDateDisplayMessage" minOccurs="0"/>
|
133
|
+
</all>
|
134
|
+
</complexType>
|
135
|
+
|
136
|
+
|
137
|
+
<complexType name="Locations">
|
138
|
+
<choice>
|
139
|
+
<element name="Location" type="x:Location" minOccurs="0" maxOccurs="25"/>
|
140
|
+
</choice>
|
141
|
+
</complexType>
|
142
|
+
|
143
|
+
|
144
|
+
<complexType name="Header">
|
145
|
+
<choice>
|
146
|
+
<element name="Property" type="x:Property" minOccurs="1" maxOccurs="2"/>
|
147
|
+
</choice>
|
148
|
+
</complexType>
|
149
|
+
|
150
|
+
|
151
|
+
<complexType name="Primary">
|
152
|
+
<choice>
|
153
|
+
<element name="Property" type="x:Property" minOccurs="1" maxOccurs="2"/>
|
154
|
+
</choice>
|
155
|
+
</complexType>
|
156
|
+
|
157
|
+
|
158
|
+
<complexType name="Secondary">
|
159
|
+
<choice>
|
160
|
+
<element name="Property" type="x:Property" minOccurs="1" maxOccurs="5"/>
|
161
|
+
</choice>
|
162
|
+
</complexType>
|
163
|
+
|
164
|
+
|
165
|
+
<complexType name="Center">
|
166
|
+
<choice>
|
167
|
+
<element name="Property" type="x:Property" minOccurs="1" maxOccurs="1"/>
|
168
|
+
</choice>
|
169
|
+
</complexType>
|
170
|
+
|
171
|
+
|
172
|
+
<complexType name="Footer">
|
173
|
+
<choice>
|
174
|
+
<element name="Property" type="x:Property" minOccurs="1" maxOccurs="4"/>
|
175
|
+
</choice>
|
176
|
+
</complexType>
|
177
|
+
|
178
|
+
|
179
|
+
<complexType name="DisplayProperties">
|
180
|
+
<sequence>
|
181
|
+
<element name="Header" type="x:Header" minOccurs="0" maxOccurs="1"/>
|
182
|
+
<element name="Primary" type="x:Primary" minOccurs="0" maxOccurs="1"/>
|
183
|
+
<element name="Secondary" type="x:Secondary" minOccurs="0" maxOccurs="1"/>
|
184
|
+
<element name="Center" type="x:Center" minOccurs="0" maxOccurs="1"/>
|
185
|
+
<element name="Footer" type="x:Footer" minOccurs="0" maxOccurs="1"/>
|
186
|
+
<element name="Property" type="x:Property" minOccurs="0" maxOccurs="50"/>
|
187
|
+
</sequence>
|
188
|
+
</complexType>
|
189
|
+
|
190
|
+
|
191
|
+
<complexType name="TransactionItem">
|
192
|
+
<all>
|
193
|
+
<element name="Description"/>
|
194
|
+
<element name="DisplayAmount"/>
|
195
|
+
<element name="Id"/>
|
196
|
+
<element name="DisplayLocation"/>
|
197
|
+
<element name="TransactionDate" type="dateTime"/>
|
198
|
+
<element name="IgnoreTimeOfDay" minOccurs="0" type="boolean"/>
|
199
|
+
<element name="IsLaunchable" minOccurs="0" type="boolean"/>
|
200
|
+
</all>
|
201
|
+
</complexType>
|
202
|
+
|
203
|
+
|
204
|
+
<complexType name="TransactionHistory">
|
205
|
+
<choice>
|
206
|
+
<element name="TransactionItem" type="x:TransactionItem" minOccurs="0" maxOccurs="30"/>
|
207
|
+
</choice>
|
208
|
+
</complexType>
|
209
|
+
|
210
|
+
|
211
|
+
<element name="WalletItem">
|
212
|
+
<complexType>
|
213
|
+
<all>
|
214
|
+
<element name="Version"/>
|
215
|
+
<element name="Id" minOccurs="0"/>
|
216
|
+
<element name="WebServiceUrl" minOccurs="0" type="x:WebServiceUrl"/>
|
217
|
+
<element name="AuthenticationToken" minOccurs="0"/>
|
218
|
+
<element name="ProductId" type="x:GUID" minOccurs="0"/>
|
219
|
+
<element name="Kind" type="x:Kind"/>
|
220
|
+
<element name="DisplayName"/>
|
221
|
+
<element name="IssuerDisplayName"/>
|
222
|
+
<element name="LogoText" minOccurs="0"/>
|
223
|
+
<element name="ExpirationDate" type="dateTime" minOccurs="0"/>
|
224
|
+
<element name="Barcode" type="x:Barcode" minOccurs="0"/>
|
225
|
+
<element name="IsLaunchable" minOccurs="0" type="boolean"/>
|
226
|
+
<element name="DisplayMessage" minOccurs="0"/>
|
227
|
+
<element name="IsDisplayMessageLaunchable" minOccurs="0" type="boolean"/>
|
228
|
+
<element name="HeaderColor" type="x:ColorFormat" minOccurs="1"/>
|
229
|
+
<element name="BodyColor" type="x:ColorFormat" minOccurs="1"/>
|
230
|
+
<element name="HeaderFontColor" type="x:ColorFormat" minOccurs="0"/>
|
231
|
+
<element name="BodyFontColor" type="x:ColorFormat" minOccurs="0"/>
|
232
|
+
<element name="RelevantDate" type="x:RelevantDate" minOccurs="0"/>
|
233
|
+
<element name="RelevantLocations" type="x:Locations" minOccurs="0"/>
|
234
|
+
<element name="DisplayProperties" type="x:DisplayProperties" minOccurs="0"/>
|
235
|
+
<element name="TransactionHistory" type="x:TransactionHistory" minOccurs="0"/>
|
236
|
+
<element name="IsMoreTransactionHistoryLaunchable" minOccurs="0" type="boolean"/>
|
237
|
+
</all>
|
238
|
+
</complexType>
|
239
|
+
</element>
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
</schema>
|