spyne 0.19.1 → 0.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/.eslintignore +2 -0
  2. package/.eslintrc.js +4 -3
  3. package/.travis.yml +24 -11
  4. package/karma.conf.js +77 -87
  5. package/lib/spyne.esm.js +15 -0
  6. package/lib/spyne.esm.js.map +1 -0
  7. package/lib/spyne.js +248 -248
  8. package/lib/spyne.umd.js +3 -0
  9. package/lib/spyne.umd.js.LICENSE.txt +16 -0
  10. package/package.json +48 -27
  11. package/rollup.config.js +26 -0
  12. package/src/spyne/channels/channel-fetch-class.js +39 -43
  13. package/src/spyne/channels/channel-payload-class.js +61 -74
  14. package/src/spyne/channels/channel-proxy.js +25 -26
  15. package/src/spyne/channels/channel.js +141 -149
  16. package/src/spyne/channels/channels-config.js +46 -47
  17. package/src/spyne/channels/channels-map.js +61 -65
  18. package/src/spyne/channels/spyne-channel-lifecycle.js +12 -12
  19. package/src/spyne/channels/spyne-channel-route.js +241 -250
  20. package/src/spyne/channels/spyne-channel-ui.js +213 -75
  21. package/src/spyne/channels/spyne-channel-window.js +157 -157
  22. package/src/spyne/spyne-app.js +32 -19
  23. package/src/spyne/spyne-plugins.js +55 -70
  24. package/src/spyne/spyne.js +23 -23
  25. package/src/spyne/utils/channel-config-validator.js +10 -10
  26. package/src/spyne/utils/channel-fetch-util.js +72 -55
  27. package/src/spyne/utils/channel-payload-filter.js +89 -100
  28. package/src/spyne/utils/deep-merge.js +31 -29
  29. package/src/spyne/utils/frp-tools.js +108 -92
  30. package/src/spyne/utils/gc.js +6 -6
  31. package/src/spyne/utils/mixins/base-core-mixins.js +17 -15
  32. package/src/spyne/utils/mixins/base-streams-mixins.js +9 -9
  33. package/src/spyne/utils/route-channel-updater.js +23 -29
  34. package/src/spyne/utils/safe-clone.js +40 -58
  35. package/src/spyne/utils/sanitize-html.js +35 -0
  36. package/src/spyne/utils/security-policy.js +11 -0
  37. package/src/spyne/utils/spyne-app-properties.js +110 -114
  38. package/src/spyne/utils/spyne-logger.js +4 -11
  39. package/src/spyne/utils/spyne-plugins-methods.js +38 -63
  40. package/src/spyne/utils/spyne-trait.js +33 -33
  41. package/src/spyne/utils/spyne-utils-channel-route-url.js +229 -153
  42. package/src/spyne/utils/spyne-utils-channel-route.js +128 -138
  43. package/src/spyne/utils/spyne-utils-channel-window.js +39 -39
  44. package/src/spyne/utils/viewstream-animations.js +12 -12
  45. package/src/spyne/utils/viewstream-observables.js +45 -45
  46. package/src/spyne/views/dom-element-template.js +111 -114
  47. package/src/spyne/views/dom-element.js +82 -84
  48. package/src/spyne/views/view-stream-broadcaster.js +66 -62
  49. package/src/spyne/views/view-stream-element.js +105 -106
  50. package/src/spyne/views/view-stream-payload.js +25 -27
  51. package/src/spyne/views/view-stream-selector.js +157 -163
  52. package/src/spyne/views/view-stream.js +416 -640
  53. package/src/tests/channels/channel-dom.test.js +15 -15
  54. package/src/tests/channels/channel-fetch.test.js +51 -62
  55. package/src/tests/channels/channel-payload-class.test.js +50 -63
  56. package/src/tests/channels/channel-payload-filter.test.js +133 -193
  57. package/src/tests/channels/channel-route.test.js +102 -112
  58. package/src/tests/channels/channel-stream-item.test.js +19 -19
  59. package/src/tests/channels/channel-ui.test.js +15 -27
  60. package/src/tests/channels/channel-util-dom.test.js +31 -31
  61. package/src/tests/channels/channel.test.js +20 -25
  62. package/src/tests/channels/route-utils.test.js +61 -66
  63. package/src/tests/channels/url-utils.test.js +151 -151
  64. package/src/tests/channels/view-stream-broadcaster.test.js +7 -7
  65. package/src/tests/import.test.js +5 -5
  66. package/src/tests/index.js +6 -7
  67. package/src/tests/index.test.js +6 -8
  68. package/src/tests/mocks/channel-payload-data.js +218 -220
  69. package/src/tests/mocks/enhancer.test.js +5 -5
  70. package/src/tests/mocks/payload-ui.js +87 -90
  71. package/src/tests/mocks/routes-data.js +264 -266
  72. package/src/tests/mocks/spyne-docs.mocks.js +3 -3
  73. package/src/tests/mocks/template-renderer.mocks.js +47 -47
  74. package/src/tests/mocks/utils-data.js +78 -79
  75. package/src/tests/mocks/viewstream-internal-payload.mocks.js +50 -50
  76. package/src/tests/mocks/window-events-arr.js +1 -1
  77. package/src/tests/package-json.spec.test.js +9 -0
  78. package/src/tests/spyne-app.test.js +15 -18
  79. package/src/tests/spyne-plugin.test.js +16 -20
  80. package/src/tests/utils/channel-action-filter.test.js +84 -86
  81. package/src/tests/utils/channel-data-packet-generator.unused.js +62 -86
  82. package/src/tests/utils/channel-fetch-util.test.js +64 -66
  83. package/src/tests/utils/frp-tools.test.js +19 -19
  84. package/src/tests/utils/plugins-methods.test.js +31 -55
  85. package/src/tests/utils/security.test.js +10 -0
  86. package/src/tests/utils/spyne-app-properties.test.js +4 -8
  87. package/src/tests/views/dom-el-selectors.test.js +112 -119
  88. package/src/tests/views/dom-el-template-proxy.test.js +7 -0
  89. package/src/tests/views/dom-el-template.test.js +186 -156
  90. package/src/tests/views/dom-el.test.js +58 -56
  91. package/src/tests/views/view-stream-enhancer-loader.test.js +2 -2
  92. package/src/tests/views/view-stream-enhancer.test.js +11 -11
  93. package/src/tests/views/view-stream.test.js +22 -33
  94. package/webpack.config.js +76 -67
  95. package/docs/-_%20Solves%20equations%20of%20the%20form%20a%20_%20x%20=%20b.html +0 -487
  96. package/docs/DomItem.html +0 -298
  97. package/docs/DomItem_DomItem.html +0 -314
  98. package/docs/ViewStream.html +0 -2249
  99. package/docs/ViewStream_ViewStream.html +0 -503
  100. package/docs/custom/css/jsdoc-viewstream.css +0 -377
  101. package/docs/custom/layout.tmpl +0 -47
  102. package/docs/dom-item.js.html +0 -213
  103. package/docs/fonts/OpenSans-Bold-webfont.eot +0 -0
  104. package/docs/fonts/OpenSans-Bold-webfont.svg +0 -1830
  105. package/docs/fonts/OpenSans-Bold-webfont.woff +0 -0
  106. package/docs/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  107. package/docs/fonts/OpenSans-BoldItalic-webfont.svg +0 -1830
  108. package/docs/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  109. package/docs/fonts/OpenSans-Italic-webfont.eot +0 -0
  110. package/docs/fonts/OpenSans-Italic-webfont.svg +0 -1830
  111. package/docs/fonts/OpenSans-Italic-webfont.woff +0 -0
  112. package/docs/fonts/OpenSans-Light-webfont.eot +0 -0
  113. package/docs/fonts/OpenSans-Light-webfont.svg +0 -1831
  114. package/docs/fonts/OpenSans-Light-webfont.woff +0 -0
  115. package/docs/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  116. package/docs/fonts/OpenSans-LightItalic-webfont.svg +0 -1835
  117. package/docs/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  118. package/docs/fonts/OpenSans-Regular-webfont.eot +0 -0
  119. package/docs/fonts/OpenSans-Regular-webfont.svg +0 -1831
  120. package/docs/fonts/OpenSans-Regular-webfont.woff +0 -0
  121. package/docs/global.html +0 -548
  122. package/docs/index-custom.html +0 -79
  123. package/docs/index.html +0 -82
  124. package/docs/jsdoc.config.json +0 -22
  125. package/docs/scripts/linenumber.js +0 -25
  126. package/docs/scripts/prettify/Apache-License-2.0.txt +0 -202
  127. package/docs/scripts/prettify/lang-css.js +0 -2
  128. package/docs/scripts/prettify/prettify.js +0 -28
  129. package/docs/styles/jsdoc-default.css +0 -358
  130. package/docs/styles/prettify-jsdoc.css +0 -111
  131. package/docs/styles/prettify-tomorrow.css +0 -132
  132. package/docs/view-stream.js.html +0 -767
@@ -1,331 +1,329 @@
1
1
  const mainConfigPostProcessedData = {
2
- "scrollLock": false,
3
- "scrollLockX": 0,
4
- "scrollLockY": 0,
5
- "debug": true,
6
- "channels": {
7
- "WINDOW": {
8
- "mediqQueries": {
9
- "showMenuDrawer": "(max-width: 768px)"
2
+ scrollLock: false,
3
+ scrollLockX: 0,
4
+ scrollLockY: 0,
5
+ debug: true,
6
+ channels: {
7
+ WINDOW: {
8
+ mediaQueries: {
9
+ showMenuDrawer: '(max-width: 768px)'
10
10
  },
11
- "events": [
12
- "beforeunload"
11
+ events: [
12
+ 'beforeunload'
13
13
  ],
14
- "listenForResize": true,
15
- "listenForOrientation": true,
16
- "listenForScroll": true,
17
- "listenForMouseWheel": false,
18
- "debounceMSTimeForResize": 200,
19
- "debounceMSTimeForScroll": 50,
20
- "listenForMediaQueries": true
14
+ listenForResize: true,
15
+ listenForOrientation: true,
16
+ listenForScroll: true,
17
+ listenForMouseWheel: false,
18
+ debounceMSTimeForResize: 200,
19
+ debounceMSTimeForScroll: 50,
20
+ listenForMediaQueries: true
21
21
  },
22
- "ROUTE": {
23
- "type": "slash",
24
- "isHash": false,
25
- "isHidden": false,
26
- "add404s" : true,
27
- "routes": {
28
- "routePath": {
29
- "404": ".+",
30
- "routeName": "pageId",
31
- "home": "^$",
32
- "work": {
33
- "routePath": {
34
- "404": ".+",
35
- "routeName": "topicId",
36
- "services": "services",
37
- "portfolio": "portfolio",
38
- "blog": "blog"
22
+ ROUTE: {
23
+ type: 'slash',
24
+ isHash: false,
25
+ isHidden: false,
26
+ add404s : true,
27
+ routes: {
28
+ routePath: {
29
+ 404: '.+',
30
+ routeName: 'pageId',
31
+ home: '^$',
32
+ work: {
33
+ routePath: {
34
+ 404: '.+',
35
+ routeName: 'topicId',
36
+ services: 'services',
37
+ portfolio: 'portfolio',
38
+ blog: 'blog'
39
39
  }
40
40
  },
41
- "about": {
42
- "routePath": {
43
- "404": ".+",
44
- "routeName": "topicId",
45
- "contact": "contact"
41
+ about: {
42
+ routePath: {
43
+ 404: '.+',
44
+ routeName: 'topicId',
45
+ contact: 'contact'
46
46
  }
47
47
  }
48
48
  }
49
49
  },
50
- "paramsArr": [
51
- ".+",
52
- "pageId",
53
- "^$",
54
- ".+",
55
- "topicId",
56
- "services",
57
- "portfolio",
58
- "blog",
59
- ".+",
60
- "topicId",
61
- "contact"
50
+ paramsArr: [
51
+ '.+',
52
+ 'pageId',
53
+ '^$',
54
+ '.+',
55
+ 'topicId',
56
+ 'services',
57
+ 'portfolio',
58
+ 'blog',
59
+ '.+',
60
+ 'topicId',
61
+ 'contact'
62
62
  ]
63
63
  }
64
64
  },
65
- "siteTitle": "Acme Co.",
66
- "localStorageKey": "spaGenStore",
67
- "appTitles": {
68
- "header": "Your Title",
69
- "footer": "Your Footer Text"
65
+ siteTitle: 'Acme Co.',
66
+ localStorageKey: 'spaGenStore',
67
+ appTitles: {
68
+ header: 'Your Title',
69
+ footer: 'Your Footer Text'
70
70
  }
71
71
  }
72
72
  const mainConfigPreProcessedData = {
73
- "scrollLock": false,
74
- "scrollLockX": 0,
75
- "scrollLockY": 0,
76
- "debug": true,
77
- "channels": {
78
- "WINDOW": {
79
- "mediqQueries": {
80
- "showMenuDrawer": "(max-width: 768px)"
73
+ scrollLock: false,
74
+ scrollLockX: 0,
75
+ scrollLockY: 0,
76
+ debug: true,
77
+ channels: {
78
+ WINDOW: {
79
+ mediaQueries: {
80
+ showMenuDrawer: '(max-width: 768px)'
81
81
  },
82
- "events": [
83
- "beforeunload"
82
+ events: [
83
+ 'beforeunload'
84
84
  ],
85
- "listenForResize": true,
86
- "listenForOrientation": true,
87
- "listenForScroll": true,
88
- "listenForMouseWheel": false,
89
- "debounceMSTimeForResize": 200,
90
- "debounceMSTimeForScroll": 50,
91
- "listenForMediaQueries": true
85
+ listenForResize: true,
86
+ listenForOrientation: true,
87
+ listenForScroll: true,
88
+ listenForMouseWheel: false,
89
+ debounceMSTimeForResize: 200,
90
+ debounceMSTimeForScroll: 50,
91
+ listenForMediaQueries: true
92
92
  },
93
- "ROUTE": {
94
- "type": "slash",
95
- "isHash": false,
96
- "isHidden": false,
97
- "add404s" : true,
98
- "routes": {
99
- "routePath": {
100
- "routeName": "pageId",
101
- "home": "",
102
- "work": {
103
- "routePath": {
104
- "404": ".+",
105
- "routeName": "topicId",
106
- "services": "services",
107
- "portfolio": "portfolio",
108
- "blog": "blog"
93
+ ROUTE: {
94
+ type: 'slash',
95
+ isHash: false,
96
+ isHidden: false,
97
+ add404s : true,
98
+ routes: {
99
+ routePath: {
100
+ routeName: 'pageId',
101
+ home: '',
102
+ work: {
103
+ routePath: {
104
+ 404: '.+',
105
+ routeName: 'topicId',
106
+ services: 'services',
107
+ portfolio: 'portfolio',
108
+ blog: 'blog'
109
109
  }
110
110
  },
111
- "about": {
112
- "routePath": {
113
- "404": ".+",
114
- "routeName": "topicId",
115
- "contact": "contact"
111
+ about: {
112
+ routePath: {
113
+ 404: '.+',
114
+ routeName: 'topicId',
115
+ contact: 'contact'
116
116
  }
117
117
  }
118
118
  }
119
119
  },
120
- "paramsArr": [
121
- ".+",
122
- "pageId",
123
- "^$",
124
- ".+",
125
- "topicId",
126
- "services",
127
- "portfolio",
128
- "blog",
129
- ".+",
130
- "topicId",
131
- "contact"
120
+ paramsArr: [
121
+ '.+',
122
+ 'pageId',
123
+ '^$',
124
+ '.+',
125
+ 'topicId',
126
+ 'services',
127
+ 'portfolio',
128
+ 'blog',
129
+ '.+',
130
+ 'topicId',
131
+ 'contact'
132
132
  ]
133
133
  }
134
134
  },
135
- "siteTitle": "Acme Co.",
136
- "localStorageKey": "spaGenStore",
137
- "appTitles": {
138
- "header": "Your Title",
139
- "footer": "Your Footer Text"
135
+ siteTitle: 'Acme Co.',
136
+ localStorageKey: 'spaGenStore',
137
+ appTitles: {
138
+ header: 'Your Title',
139
+ footer: 'Your Footer Text'
140
140
  }
141
141
  }
142
142
 
143
-
144
143
  const postProcessedRouteData = {
145
- 'type': 'slash',
146
- 'isHash': false,
147
- 'isHidden': false,
148
- 'add404s': true,
149
- 'routes': {
150
- 'routePath': {
151
- '404': '.+',
152
- 'routeName': 'pageId',
153
- 'home': '^$',
154
- 'work': {
155
- 'routePath': {
156
- '404': '.+',
157
- 'routeName': 'topicId',
158
- 'services': 'services',
159
- 'portfolio': 'portfolio',
160
- 'blog': 'blog',
161
- 'items': {
162
- 'routePath': {
163
- '404': '.+',
164
- 'routeName': 'itemId',
165
- 'contact': 'contact',
166
- "base" : "^$"
167
- },
168
- },
169
- },
170
- },
171
- 'about': {
172
- 'routePath': {
173
- '404': '.+',
174
- 'routeName': 'topicId',
175
- 'contact': 'smith|jane|john',
176
- },
144
+ type: 'slash',
145
+ isHash: false,
146
+ isHidden: false,
147
+ add404s: true,
148
+ routes: {
149
+ routePath: {
150
+ 404: '.+',
151
+ routeName: 'pageId',
152
+ home: '^$',
153
+ work: {
154
+ routePath: {
155
+ 404: '.+',
156
+ routeName: 'topicId',
157
+ services: 'services',
158
+ portfolio: 'portfolio',
159
+ blog: 'blog',
160
+ items: {
161
+ routePath: {
162
+ 404: '.+',
163
+ routeName: 'itemId',
164
+ contact: 'contact',
165
+ base : '^$'
166
+ }
167
+ }
168
+ }
177
169
  },
178
- },
179
- },
180
- };
181
-
170
+ about: {
171
+ routePath: {
172
+ 404: '.+',
173
+ routeName: 'topicId',
174
+ contact: 'smith|jane|john'
175
+ }
176
+ }
177
+ }
178
+ }
179
+ }
182
180
 
183
181
  const reduceProcessedRouteData = {
184
- "type": "slash",
185
- "isHash": false,
186
- "isHidden": false,
187
- 'add404s': true,
188
- 'routes': {
189
- 'routePath': {
190
- 'routeName': 'pageId',
191
- 'home': '^$',
192
- 'work': {
193
- 'routePath': {
194
- 'routeName': 'topicId',
195
- 'portfolio': 'portfolio',
196
- 'services': 'services',
182
+ type: 'slash',
183
+ isHash: false,
184
+ isHidden: false,
185
+ add404s: true,
186
+ routes: {
187
+ routePath: {
188
+ routeName: 'pageId',
189
+ home: '^$',
190
+ work: {
191
+ routePath: {
192
+ routeName: 'topicId',
193
+ portfolio: 'portfolio',
194
+ services: 'services',
197
195
  'items-*': {
198
- 'routePath': {
199
- 'routeName': 'itemId',
200
- 'contact': 'contact',
201
- "base" : "base"
202
- },
203
- },
204
- },
205
- },
206
- 'about': {
207
- 'routePath': {
208
- 'routeName': 'topicId',
209
- 'contact': 'smith',
210
- },
196
+ routePath: {
197
+ routeName: 'itemId',
198
+ contact: 'contact',
199
+ base : 'base'
200
+ }
201
+ }
202
+ }
211
203
  },
212
- },
213
- },
214
- };
204
+ about: {
205
+ routePath: {
206
+ routeName: 'topicId',
207
+ contact: 'smith'
208
+ }
209
+ }
210
+ }
211
+ }
212
+ }
215
213
 
216
214
  const reducedRoutesArr = [
217
215
  {
218
- "pageId": "home",
219
- "title": "HOME",
220
- "href": "/",
221
- "navLevel": 1
216
+ pageId: 'home',
217
+ title: 'HOME',
218
+ href: '/',
219
+ navLevel: 1
222
220
  },
223
221
  {
224
- "pageId": "work",
225
- "topicId": "",
226
- "navLevel": 1,
227
- "title": "WORK",
228
- "href": "/work"
222
+ pageId: 'work',
223
+ topicId: '',
224
+ navLevel: 1,
225
+ title: 'WORK',
226
+ href: '/work'
229
227
  },
230
228
  {
231
- "pageId": "work",
232
- "topicId": "services",
233
- "title": "SERVICES",
234
- "href": "/work/services",
235
- "navLevel": 2
229
+ pageId: 'work',
230
+ topicId: 'services',
231
+ title: 'SERVICES',
232
+ href: '/work/services',
233
+ navLevel: 2
236
234
  },
237
235
  {
238
- "pageId": "work",
239
- "topicId": "portfolio",
240
- "title": "PORTFOLIO",
241
- "href": "/work/portfolio",
242
- "navLevel": 2
236
+ pageId: 'work',
237
+ topicId: 'portfolio',
238
+ title: 'PORTFOLIO',
239
+ href: '/work/portfolio',
240
+ navLevel: 2
243
241
  },
244
242
  {
245
- "pageId": "work",
246
- "topicId": "blog",
247
- "title": "BLOG",
248
- "href": "/work/blog",
249
- "navLevel": 2
243
+ pageId: 'work',
244
+ topicId: 'blog',
245
+ title: 'BLOG',
246
+ href: '/work/blog',
247
+ navLevel: 2
250
248
  },
251
249
  {
252
- "pageId": "work",
253
- "topicId": "items",
254
- "itemId": "contact",
255
- "title": "CONTACT",
256
- "href": "/work/items/contact",
257
- "navLevel": 3
250
+ pageId: 'work',
251
+ topicId: 'items',
252
+ itemId: 'contact',
253
+ title: 'CONTACT',
254
+ href: '/work/items/contact',
255
+ navLevel: 3
258
256
  },
259
257
  {
260
- "pageId": "work",
261
- "topicId": "items",
262
- "itemId": "base",
263
- "title": "BASE",
264
- "href": "/work/items/",
265
- "navLevel": 3
258
+ pageId: 'work',
259
+ topicId: 'items',
260
+ itemId: 'base',
261
+ title: 'BASE',
262
+ href: '/work/items/',
263
+ navLevel: 3
266
264
  },
267
265
  {
268
- "pageId": "about",
269
- "topicId": "",
270
- "navLevel": 1,
271
- "title": "ABOUT",
272
- "href": "/about"
266
+ pageId: 'about',
267
+ topicId: '',
268
+ navLevel: 1,
269
+ title: 'ABOUT',
270
+ href: '/about'
273
271
  },
274
272
  {
275
- "pageId": "about",
276
- "topicId": "contact",
277
- "title": "CONTACT",
278
- "href": "/about/smith",
279
- "navLevel": 2
273
+ pageId: 'about',
274
+ topicId: 'contact',
275
+ title: 'CONTACT',
276
+ href: '/about/smith',
277
+ navLevel: 2
280
278
  }, {
281
- "bioId": "",
282
- "href": "/bio-",
283
- "navLevel": 1,
284
- "pageId": "bio-",
285
- "title": "bio-.*"
279
+ bioId: '',
280
+ href: '/bio-',
281
+ navLevel: 1,
282
+ pageId: 'bio-',
283
+ title: 'bio-.*'
286
284
  },
287
285
  {
288
- "bioId": "bioLastName",
289
- "href": "/bio-/",
290
- "navLevel": 2,
291
- "pageId": "bio-",
292
- "title": "BIOLASTNAME"
286
+ bioId: 'bioLastName',
287
+ href: '/bio-/',
288
+ navLevel: 2,
289
+ pageId: 'bio-',
290
+ title: 'BIOLASTNAME'
293
291
  }
294
292
  ]
295
293
 
296
294
  const preProcessedRouteData = {
297
- 'type': 'slash',
298
- 'isHash': false,
299
- 'isHidden': false,
300
- 'add404s': true,
301
- 'routes': {
302
- 'routePath': {
303
- 'routeName': 'pageId',
304
- 'home': '',
305
- 'work': {
306
- 'routePath': {
307
- 'routeName': 'topicId',
308
- 'services': 'services',
309
- 'portfolio': 'portfolio',
310
- 'blog': 'blog',
311
- 'items': {
312
- 'routePath': {
313
- 'routeName': 'itemId',
314
- 'contact': 'contact',
315
- "base" : ""
316
- },
317
- },
318
- },
319
- },
320
- 'about': {
321
- 'routePath': {
322
- '404': '.+',
323
- 'routeName': 'topicId',
324
- 'contact': ['smith', 'jane', 'john'],
325
- },
295
+ type: 'slash',
296
+ isHash: false,
297
+ isHidden: false,
298
+ add404s: true,
299
+ routes: {
300
+ routePath: {
301
+ routeName: 'pageId',
302
+ home: '',
303
+ work: {
304
+ routePath: {
305
+ routeName: 'topicId',
306
+ services: 'services',
307
+ portfolio: 'portfolio',
308
+ blog: 'blog',
309
+ items: {
310
+ routePath: {
311
+ routeName: 'itemId',
312
+ contact: 'contact',
313
+ base : ''
314
+ }
315
+ }
316
+ }
326
317
  },
327
- },
328
- },
329
- };
318
+ about: {
319
+ routePath: {
320
+ 404: '.+',
321
+ routeName: 'topicId',
322
+ contact: ['smith', 'jane', 'john']
323
+ }
324
+ }
325
+ }
326
+ }
327
+ }
330
328
 
331
- module.exports = {postProcessedRouteData,reducedRoutesArr, preProcessedRouteData,reduceProcessedRouteData, mainConfigPreProcessedData, mainConfigPostProcessedData};
329
+ module.exports = { postProcessedRouteData, reducedRoutesArr, preProcessedRouteData, reduceProcessedRouteData, mainConfigPreProcessedData, mainConfigPostProcessedData }
@@ -1,4 +1,4 @@
1
- let spyneDocsDomStr = `<main id="app" class="reveal">
1
+ const spyneDocsDomStr = `<main id="app" class="reveal">
2
2
 
3
3
  <header id="header"><ul id="my-list">
4
4
  <li class="has-svg logo" data-channel="ROUTE" data-page-id="home" data-section="" data-menu-item="" id="home">
@@ -986,6 +986,6 @@ let spyneDocsDomStr = `<main id="app" class="reveal">
986
986
  l-13.3,7.7C46,58,35,64.3,28.4,68.2l-13.3,7.7C8.5,79.7,3,76.5,3,68.8V53.5z"></path>
987
987
  </g>
988
988
  </svg>
989
- </div><li id="channels-base" class="menu-item menu-level-1" data-channel="ROUTE" data-type="menuItem" data-menu-item="channels-base">ChannelsBase</li><li id="channels-base-get-channel" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="channels-base-get-channel">getChannel</li><li id="dom-item" class="menu-item menu-level-1" data-channel="ROUTE" data-type="menuItem" data-menu-item="dom-item">DomEl</li><li id="dom-item-render" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="dom-item-render">render</li><li id="view-stream" class="menu-item menu-level-1" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream">ViewStream</li><li id="view-stream-append-to-dom" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-append-to-dom">appendToDom</li><li id="view-stream-prepend-to-dom" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-prepend-to-dom">prependToDom</li><li id="view-stream-append-view" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-append-view">appendView</li><li id="view-stream-append-view-to-parent" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-append-view-to-parent">appendViewToParentEl</li><li id="view-stream-prepend-view-to-parent" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-prepend-view-to-parent">prependViewToParentEl</li><li id="view-stream-prepend-view" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-prepend-view">prependView</li><li id="view-stream-append-to-null" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-append-to-null">appendToNull</li><li id="view-stream-down-stream" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-down-stream">downStream</li><li id="view-stream-broadcast-events" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-broadcast-events">broadcastEvents</li><li id="view-stream-get-channel" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-get-channel">getChannel</li><li id="view-stream-add-channel" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-add-channel">addChannel</li><li id="view-stream-send-channel-payload" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-send-channel-payload">sendInfoToChannel</li></ul></section></section></main>`;
989
+ </div><li id="channels-base" class="menu-item menu-level-1" data-channel="ROUTE" data-type="menuItem" data-menu-item="channels-base">ChannelsBase</li><li id="channels-base-get-channel" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="channels-base-get-channel">getChannel</li><li id="dom-item" class="menu-item menu-level-1" data-channel="ROUTE" data-type="menuItem" data-menu-item="dom-item">DomEl</li><li id="dom-item-render" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="dom-item-render">render</li><li id="view-stream" class="menu-item menu-level-1" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream">ViewStream</li><li id="view-stream-append-to-dom" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-append-to-dom">appendToDom</li><li id="view-stream-prepend-to-dom" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-prepend-to-dom">prependToDom</li><li id="view-stream-append-view" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-append-view">appendView</li><li id="view-stream-append-view-to-parent" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-append-view-to-parent">appendViewToParentEl</li><li id="view-stream-prepend-view-to-parent" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-prepend-view-to-parent">prependViewToParentEl</li><li id="view-stream-prepend-view" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-prepend-view">prependView</li><li id="view-stream-append-to-null" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-append-to-null">appendToNull</li><li id="view-stream-down-stream" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-down-stream">downStream</li><li id="view-stream-broadcast-events" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-broadcast-events">broadcastEvents</li><li id="view-stream-get-channel" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-get-channel">getChannel</li><li id="view-stream-add-channel" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-add-channel">addChannel</li><li id="view-stream-send-channel-payload" class="menu-item menu-level-2" data-channel="ROUTE" data-type="menuItem" data-menu-item="view-stream-send-channel-payload">sendInfoToChannel</li></ul></section></section></main>`
990
990
 
991
- export { spyneDocsDomStr };
991
+ export { spyneDocsDomStr }