reflekt 1.0.0 → 1.0.5

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.
@@ -6,8 +6,8 @@
6
6
  # @flow
7
7
  # 1. Reflekt is prepended to a class and setup.
8
8
  # 2. When a class insantiates so does Reflekt.
9
- # 3. An Execution is created on method call.
10
- # 4. Many Refections are created per Execution.
9
+ # 3. An Action is created on method call.
10
+ # 4. Many Refections are created per Action.
11
11
  # 5. Each Reflection executes on cloned data.
12
12
  # 6. Flow is returned to the original method.
13
13
  #
@@ -20,13 +20,13 @@ require 'set'
20
20
  require 'erb'
21
21
  require 'rowdb'
22
22
  require 'Accessor'
23
+ require 'Action'
24
+ require 'ActionStack'
23
25
  require 'Aggregator'
24
26
  require 'Config'
25
27
  require 'Control'
26
- require 'Execution'
27
28
  require 'Reflection'
28
29
  require 'Renderer'
29
- require 'ShadowStack'
30
30
  # Require all rules.
31
31
  Dir[File.join(__dir__, 'rules', '*.rb')].each { |file| require file }
32
32
 
@@ -53,34 +53,34 @@ module Reflekt
53
53
  # When Reflekt enabled and control reflection has executed without error.
54
54
  if @@reflekt.config.enabled && !@@reflekt.error
55
55
 
56
- # Get current execution.
57
- execution = @@reflekt.stack.peek()
56
+ # Get current action.
57
+ action = @@reflekt.stack.peek()
58
58
 
59
59
  # Don't reflect when reflect limit reached or method skipped.
60
60
  unless (@reflekt_counts[method] >= @@reflekt.config.reflect_limit) || self.class.reflekt_skipped?(method)
61
61
 
62
- # When stack empty or past execution done reflecting.
63
- if execution.nil? || execution.has_finished_reflecting?
62
+ # When stack empty or past action done reflecting.
63
+ if action.nil? || action.has_finished_reflecting?
64
64
 
65
- # Create execution.
66
- execution = Execution.new(self, method, @@reflekt.config.reflect_amount, @@reflekt.stack)
65
+ # Create action.
66
+ action = Action.new(self, method, @@reflekt.config.reflect_amount, @@reflekt.stack)
67
67
 
68
- @@reflekt.stack.push(execution)
68
+ @@reflekt.stack.push(action)
69
69
 
70
70
  end
71
71
 
72
72
  ##
73
- # Reflect the execution.
73
+ # Reflect the action.
74
74
  #
75
- # The first method call in the execution creates a reflection.
76
- # Then method calls are shadow executions which return to the reflection.
75
+ # The first method call in the action creates a reflection.
76
+ # Then method calls are shadow actions which return to the reflection.
77
77
  ##
78
- if execution.has_empty_reflections? && !execution.is_reflecting?
79
- execution.is_reflecting = true
78
+ if action.has_empty_reflections? && !action.is_reflecting?
79
+ action.is_reflecting = true
80
80
 
81
81
  # Create control.
82
- control = Control.new(execution, 0, @@reflekt.aggregator)
83
- execution.control = control
82
+ control = Control.new(action, 0, @@reflekt.aggregator)
83
+ action.control = control
84
84
 
85
85
  # Execute control.
86
86
  control.reflect(*args)
@@ -91,27 +91,27 @@ module Reflekt
91
91
  # Continue reflecting when control executes succesfully.
92
92
  else
93
93
 
94
- # Save control as reflection.
95
- @@reflekt.db.get("reflections").push(control.result())
94
+ # Save control as a reflection.
95
+ @@reflekt.db.get("reflections").push(control.serialize())
96
96
 
97
- # Multiple reflections per execution.
98
- execution.reflections.each_with_index do |value, index|
97
+ # Multiple reflections per action.
98
+ action.reflections.each_with_index do |value, index|
99
99
 
100
100
  # Create reflection.
101
- reflection = Reflection.new(execution, index + 1, @@reflekt.aggregator)
102
- execution.reflections[index] = reflection
101
+ reflection = Reflection.new(action, index + 1, @@reflekt.aggregator)
102
+ action.reflections[index] = reflection
103
103
 
104
104
  # Execute reflection.
105
105
  reflection.reflect(*args)
106
106
  @reflekt_counts[method] = @reflekt_counts[method] + 1
107
107
 
108
108
  # Save reflection.
109
- @@reflekt.db.get("reflections").push(reflection.result())
109
+ @@reflekt.db.get("reflections").push(reflection.serialize())
110
110
 
111
111
  end
112
112
 
113
113
  # Save control.
114
- @@reflekt.db.get("controls").push(control.result())
114
+ @@reflekt.db.get("controls").push(control.serialize())
115
115
 
116
116
  # Save results.
117
117
  @@reflekt.db.write()
@@ -121,15 +121,15 @@ module Reflekt
121
121
 
122
122
  end
123
123
 
124
- execution.is_reflecting = false
124
+ action.is_reflecting = false
125
125
  end
126
126
 
127
127
  end
128
128
 
129
129
  # Don't execute skipped methods when reflecting.
130
- unless execution.is_reflecting? && self.class.reflekt_skipped?(method)
130
+ unless action.is_reflecting? && self.class.reflekt_skipped?(method)
131
131
 
132
- # Continue execution / shadow execution.
132
+ # Continue action / shadow action.
133
133
  super *args
134
134
 
135
135
  end
@@ -137,7 +137,7 @@ module Reflekt
137
137
  # When Reflekt disabled or control reflection failed.
138
138
  else
139
139
 
140
- # Continue execution.
140
+ # Continue action.
141
141
  super *args
142
142
 
143
143
  end
@@ -180,7 +180,7 @@ module Reflekt
180
180
  # Set configuration.
181
181
  @@reflekt.path = File.dirname(File.realpath(__FILE__))
182
182
 
183
- # Get reflections directory path from config or current execution path.
183
+ # Get reflections directory path from config or current action path.
184
184
  if @@reflekt.config.output_path
185
185
  @@reflekt.output_path = File.join(@@reflekt.config.output_path, @@reflekt.config.output_directory)
186
186
  else
@@ -199,7 +199,7 @@ module Reflekt
199
199
  db = @@reflekt.db.value()
200
200
 
201
201
  # Create shadow stack.
202
- @@reflekt.stack = ShadowStack.new()
202
+ @@reflekt.stack = ActionStack.new()
203
203
 
204
204
  # Create aggregated rule sets.
205
205
  @@reflekt.aggregator = Aggregator.new(@@reflekt.config.meta_map)
@@ -13,6 +13,7 @@
13
13
 
14
14
  require 'set'
15
15
  require 'MetaBuilder'
16
+ require_relative './meta/NullMeta.rb'
16
17
 
17
18
  class RuleSet
18
19
 
@@ -37,40 +38,44 @@ class RuleSet
37
38
  ##
38
39
  # Train rule set on metadata.
39
40
  #
40
- # @param meta [Meta] The metadata to train on.
41
+ # @param meta [Hash] The metadata to train on.
41
42
  ##
42
43
  def train(meta)
43
44
 
44
- unless meta.nil? || meta[:type].nil?
45
+ # Track supported meta types.
46
+ meta_type = meta[:type]
47
+ @meta_types << meta_type
45
48
 
46
- meta_type = meta[:type]
47
- @meta_types << meta_type
49
+ # Get rule types for this meta type.
50
+ if @meta_map.key? meta_type
51
+ @meta_map[meta_type].each do |rule_type|
48
52
 
49
- # Get rule types for this meta type.
50
- if @meta_map.key? meta_type
51
- @meta_map[meta_type].each do |rule_type|
52
-
53
- # Ensure rule exists.
54
- if @rules[rule_type].nil?
55
- @rules[rule_type] = rule_type.new()
56
- end
53
+ # Ensure rule exists.
54
+ if @rules[rule_type].nil?
55
+ @rules[rule_type] = rule_type.new()
56
+ end
57
57
 
58
- # Train rule.
59
- @rules[rule_type].train(meta)
58
+ # Train rule.
59
+ @rules[rule_type].train(meta)
60
60
 
61
- end
62
61
  end
63
-
64
62
  end
65
63
 
66
64
  end
67
65
 
66
+ ##
67
+ # @param value [Dynamic]
68
+ ##
68
69
  def test(value)
69
- result = true
70
70
 
71
- # Only test data type on rule of matching meta type.
71
+ result = true
72
72
  meta_type = MetaBuilder.data_type_to_meta_type(value)
73
73
 
74
+ # Fail if value's meta type not testable by rule set.
75
+ unless @meta_types.include? meta_type
76
+ return false
77
+ end
78
+
74
79
  @rules.each do |klass, rule|
75
80
  if (rule.type == meta_type)
76
81
  unless rule.test(value)
@@ -80,6 +85,7 @@ class RuleSet
80
85
  end
81
86
 
82
87
  return result
88
+
83
89
  end
84
90
 
85
91
  ##
@@ -22,7 +22,7 @@ class ArrayMeta < Meta
22
22
 
23
23
  end
24
24
 
25
- def result()
25
+ def serialize()
26
26
  {
27
27
  :type => @type,
28
28
  :max => @max,
@@ -16,7 +16,7 @@ class BooleanMeta < Meta
16
16
  @value = value.to_s
17
17
  end
18
18
 
19
- def result()
19
+ def serialize()
20
20
  {
21
21
  :type => @type,
22
22
  :value => @value
@@ -16,7 +16,7 @@ class FloatMeta < Meta
16
16
  @value = value
17
17
  end
18
18
 
19
- def result()
19
+ def serialize()
20
20
  {
21
21
  :type => @type,
22
22
  :value => @value
@@ -16,7 +16,7 @@ class IntegerMeta < Meta
16
16
  @value = value
17
17
  end
18
18
 
19
- def result()
19
+ def serialize()
20
20
  {
21
21
  :type => @type,
22
22
  :value => @value
@@ -0,0 +1,34 @@
1
+ ################################################################################
2
+ # A reprsentation of a null value.
3
+ #
4
+ # @note
5
+ # A "null" value on serialized "inputs" and "output" also becomes a NullMeta.
6
+ #
7
+ # @hierachy
8
+ # 1. Action
9
+ # 2. Reflection
10
+ # 3. Meta <- YOU ARE HERE
11
+ ################################################################################
12
+
13
+ require 'Meta'
14
+
15
+ class NullMeta < Meta
16
+
17
+ def initialize()
18
+ @type = :null
19
+ end
20
+
21
+ ##
22
+ # @param value [NilClass]
23
+ ##
24
+ def load(value)
25
+ # No need to load a value for null meta.
26
+ end
27
+
28
+ def serialize()
29
+ {
30
+ :type => @type,
31
+ }
32
+ end
33
+
34
+ end
@@ -16,7 +16,7 @@ class StringMeta < Meta
16
16
  @length = value.length
17
17
  end
18
18
 
19
- def result()
19
+ def serialize()
20
20
  {
21
21
  :type => @type,
22
22
  :length => @length
@@ -27,14 +27,16 @@ class BooleanRule < Rule
27
27
  # @param value [Boolean]
28
28
  ##
29
29
  def test(value)
30
- @booleans.include? value
30
+
31
+ # Booleans are stored as strings.
32
+ @booleans.include? value.to_s
33
+
31
34
  end
32
35
 
33
36
  def result()
34
37
  {
35
38
  :type => @type,
36
- :is_true => @booleans.include?,
37
- :is_false => @booleans.include?
39
+ :booleans => @booleans
38
40
  }
39
41
  end
40
42
 
@@ -0,0 +1,33 @@
1
+ require 'Rule'
2
+
3
+ class NullRule < Rule
4
+
5
+ def initialize()
6
+ @type = :null
7
+ end
8
+
9
+ ##
10
+ # @param meta [NullMeta]
11
+ ##
12
+ def train(meta)
13
+ # No need to train as NullMeta is always nil.
14
+ end
15
+
16
+ ##
17
+ # @param value [NilClass]
18
+ ##
19
+ def test(value)
20
+ value.nil?
21
+ end
22
+
23
+ def result()
24
+ {
25
+ :type => @type
26
+ }
27
+ end
28
+
29
+ def random()
30
+ nil
31
+ end
32
+
33
+ end
@@ -1,9 +1,9 @@
1
- !function(e){var t=window.webpackHotUpdate;window.webpackHotUpdate=function(e,n){!function(e,t){if(!x[e]||!w[e])return;for(var n in w[e]=!1,t)Object.prototype.hasOwnProperty.call(t,n)&&(m[n]=t[n]);0==--v&&0===b&&T()}(e,n),t&&t(e,n)};var n,r=!0,o="373e467fc0e145894ed9",i={},a=[],l=[];function u(e){var t=O[e];if(!t)return N;var r=function(r){return t.hot.active?(O[r]?-1===O[r].parents.indexOf(e)&&O[r].parents.push(e):(a=[e],n=r),-1===t.children.indexOf(r)&&t.children.push(r)):(console.warn("[HMR] unexpected require("+r+") from disposed module "+e),a=[]),N(r)},o=function(e){return{configurable:!0,enumerable:!0,get:function(){return N[e]},set:function(t){N[e]=t}}};for(var i in N)Object.prototype.hasOwnProperty.call(N,i)&&"e"!==i&&"t"!==i&&Object.defineProperty(r,i,o(i));return r.e=function(e){return"ready"===f&&d("prepare"),b++,N.e(e).then(t,(function(e){throw t(),e}));function t(){b--,"prepare"===f&&(g[e]||S(e),0===b&&0===v&&T())}},r.t=function(e,t){return 1&t&&(e=r(e)),N.t(e,-2&t)},r}function c(t){var r={_acceptedDependencies:{},_declinedDependencies:{},_selfAccepted:!1,_selfDeclined:!1,_selfInvalidated:!1,_disposeHandlers:[],_main:n!==t,active:!0,accept:function(e,t){if(void 0===e)r._selfAccepted=!0;else if("function"==typeof e)r._selfAccepted=e;else if("object"==typeof e)for(var n=0;n<e.length;n++)r._acceptedDependencies[e[n]]=t||function(){};else r._acceptedDependencies[e]=t||function(){}},decline:function(e){if(void 0===e)r._selfDeclined=!0;else if("object"==typeof e)for(var t=0;t<e.length;t++)r._declinedDependencies[e[t]]=!0;else r._declinedDependencies[e]=!0},dispose:function(e){r._disposeHandlers.push(e)},addDisposeHandler:function(e){r._disposeHandlers.push(e)},removeDisposeHandler:function(e){var t=r._disposeHandlers.indexOf(e);t>=0&&r._disposeHandlers.splice(t,1)},invalidate:function(){switch(this._selfInvalidated=!0,f){case"idle":(m={})[t]=e[t],d("ready");break;case"ready":C(t);break;case"prepare":case"check":case"dispose":case"apply":(y=y||[]).push(t)}},check:E,apply:_,status:function(e){if(!e)return f;s.push(e)},addStatusHandler:function(e){s.push(e)},removeStatusHandler:function(e){var t=s.indexOf(e);t>=0&&s.splice(t,1)},data:i[t]};return n=void 0,r}var s=[],f="idle";function d(e){f=e;for(var t=0;t<s.length;t++)s[t].call(null,e)}var p,m,h,y,v=0,b=0,g={},w={},x={};function k(e){return+e+""===e?+e:e}function E(e){if("idle"!==f)throw new Error("check() is only allowed in idle status");return r=e,d("check"),(t=1e4,t=t||1e4,new Promise((function(e,n){if("undefined"==typeof XMLHttpRequest)return n(new Error("No browser support"));try{var r=new XMLHttpRequest,i=N.p+""+o+".hot-update.json";r.open("GET",i,!0),r.timeout=t,r.send(null)}catch(e){return n(e)}r.onreadystatechange=function(){if(4===r.readyState)if(0===r.status)n(new Error("Manifest request to "+i+" timed out."));else if(404===r.status)e();else if(200!==r.status&&304!==r.status)n(new Error("Manifest request to "+i+" failed."));else{try{var t=JSON.parse(r.responseText)}catch(e){return void n(e)}e(t)}}}))).then((function(e){if(!e)return d(P()?"ready":"idle"),null;w={},g={},x=e.c,h=e.h,d("prepare");var t=new Promise((function(e,t){p={resolve:e,reject:t}}));m={};return S(0),"prepare"===f&&0===b&&0===v&&T(),t}));var t}function S(e){x[e]?(w[e]=!0,v++,function(e){var t=document.createElement("script");t.charset="utf-8",t.src=N.p+""+e+"."+o+".hot-update.js",document.head.appendChild(t)}(e)):g[e]=!0}function T(){d("ready");var e=p;if(p=null,e)if(r)Promise.resolve().then((function(){return _(r)})).then((function(t){e.resolve(t)}),(function(t){e.reject(t)}));else{var t=[];for(var n in m)Object.prototype.hasOwnProperty.call(m,n)&&t.push(k(n));e.resolve(t)}}function _(t){if("ready"!==f)throw new Error("apply() is only allowed in ready status");return function t(r){var l,u,c,s,f;function p(e){for(var t=[e],n={},r=t.map((function(e){return{chain:[e],id:e}}));r.length>0;){var o=r.pop(),i=o.id,a=o.chain;if((s=O[i])&&(!s.hot._selfAccepted||s.hot._selfInvalidated)){if(s.hot._selfDeclined)return{type:"self-declined",chain:a,moduleId:i};if(s.hot._main)return{type:"unaccepted",chain:a,moduleId:i};for(var l=0;l<s.parents.length;l++){var u=s.parents[l],c=O[u];if(c){if(c.hot._declinedDependencies[i])return{type:"declined",chain:a.concat([u]),moduleId:i,parentId:u};-1===t.indexOf(u)&&(c.hot._acceptedDependencies[i]?(n[u]||(n[u]=[]),v(n[u],[i])):(delete n[u],t.push(u),r.push({chain:a.concat([u]),id:u})))}}}}return{type:"accepted",moduleId:e,outdatedModules:t,outdatedDependencies:n}}function v(e,t){for(var n=0;n<t.length;n++){var r=t[n];-1===e.indexOf(r)&&e.push(r)}}P();var b={},g=[],w={},E=function(){console.warn("[HMR] unexpected require("+T.moduleId+") to disposed module")};for(var S in m)if(Object.prototype.hasOwnProperty.call(m,S)){var T;f=k(S),T=m[S]?p(f):{type:"disposed",moduleId:S};var _=!1,C=!1,j=!1,R="";switch(T.chain&&(R="\nUpdate propagation: "+T.chain.join(" -> ")),T.type){case"self-declined":r.onDeclined&&r.onDeclined(T),r.ignoreDeclined||(_=new Error("Aborted because of self decline: "+T.moduleId+R));break;case"declined":r.onDeclined&&r.onDeclined(T),r.ignoreDeclined||(_=new Error("Aborted because of declined dependency: "+T.moduleId+" in "+T.parentId+R));break;case"unaccepted":r.onUnaccepted&&r.onUnaccepted(T),r.ignoreUnaccepted||(_=new Error("Aborted because "+f+" is not accepted"+R));break;case"accepted":r.onAccepted&&r.onAccepted(T),C=!0;break;case"disposed":r.onDisposed&&r.onDisposed(T),j=!0;break;default:throw new Error("Unexception type "+T.type)}if(_)return d("abort"),Promise.reject(_);if(C)for(f in w[f]=m[f],v(g,T.outdatedModules),T.outdatedDependencies)Object.prototype.hasOwnProperty.call(T.outdatedDependencies,f)&&(b[f]||(b[f]=[]),v(b[f],T.outdatedDependencies[f]));j&&(v(g,[T.moduleId]),w[f]=E)}var D,z=[];for(u=0;u<g.length;u++)f=g[u],O[f]&&O[f].hot._selfAccepted&&w[f]!==E&&!O[f].hot._selfInvalidated&&z.push({module:f,parents:O[f].parents.slice(),errorHandler:O[f].hot._selfAccepted});d("dispose"),Object.keys(x).forEach((function(e){!1===x[e]&&function(e){delete installedChunks[e]}(e)}));var I,M,F=g.slice();for(;F.length>0;)if(f=F.pop(),s=O[f]){var A={},L=s.hot._disposeHandlers;for(c=0;c<L.length;c++)(l=L[c])(A);for(i[f]=A,s.hot.active=!1,delete O[f],delete b[f],c=0;c<s.children.length;c++){var U=O[s.children[c]];U&&((D=U.parents.indexOf(f))>=0&&U.parents.splice(D,1))}}for(f in b)if(Object.prototype.hasOwnProperty.call(b,f)&&(s=O[f]))for(M=b[f],c=0;c<M.length;c++)I=M[c],(D=s.children.indexOf(I))>=0&&s.children.splice(D,1);d("apply"),void 0!==h&&(o=h,h=void 0);for(f in m=void 0,w)Object.prototype.hasOwnProperty.call(w,f)&&(e[f]=w[f]);var H=null;for(f in b)if(Object.prototype.hasOwnProperty.call(b,f)&&(s=O[f])){M=b[f];var V=[];for(u=0;u<M.length;u++)if(I=M[u],l=s.hot._acceptedDependencies[I]){if(-1!==V.indexOf(l))continue;V.push(l)}for(u=0;u<V.length;u++){l=V[u];try{l(M)}catch(e){r.onErrored&&r.onErrored({type:"accept-errored",moduleId:f,dependencyId:M[u],error:e}),r.ignoreErrored||H||(H=e)}}}for(u=0;u<z.length;u++){var W=z[u];f=W.module,a=W.parents,n=f;try{N(f)}catch(e){if("function"==typeof W.errorHandler)try{W.errorHandler(e)}catch(t){r.onErrored&&r.onErrored({type:"self-accept-error-handler-errored",moduleId:f,error:t,originalError:e}),r.ignoreErrored||H||(H=t),H||(H=e)}else r.onErrored&&r.onErrored({type:"self-accept-errored",moduleId:f,error:e}),r.ignoreErrored||H||(H=e)}}if(H)return d("fail"),Promise.reject(H);if(y)return t(r).then((function(e){return g.forEach((function(t){e.indexOf(t)<0&&e.push(t)})),e}));return d("idle"),new Promise((function(e){e(g)}))}(t=t||{})}function P(){if(y)return m||(m={}),y.forEach(C),y=void 0,!0}function C(t){Object.prototype.hasOwnProperty.call(m,t)||(m[t]=e[t])}var O={};function N(t){if(O[t])return O[t].exports;var n=O[t]={i:t,l:!1,exports:{},hot:c(t),parents:(l=a,a=[],l),children:[]};return e[t].call(n.exports,n,n.exports,u(t)),n.l=!0,n.exports}N.m=e,N.c=O,N.d=function(e,t,n){N.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},N.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},N.t=function(e,t){if(1&t&&(e=N(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(N.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)N.d(n,r,function(t){return e[t]}.bind(null,r));return n},N.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return N.d(t,"a",t),t},N.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},N.p="/dist/",N.h=function(){return o},u(33)(N.s=33)}([function(e,t,n){"use strict";e.exports=n(34)},function(e,t,n){"use strict";e.exports=n(39)},function(e,t,n){"use strict";var r,o=function(){return void 0===r&&(r=Boolean(window&&document&&document.all&&!window.atob)),r},i=function(){var e={};return function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}e[t]=n}return e[t]}}(),a=[];function l(e){for(var t=-1,n=0;n<a.length;n++)if(a[n].identifier===e){t=n;break}return t}function u(e,t){for(var n={},r=[],o=0;o<e.length;o++){var i=e[o],u=t.base?i[0]+t.base:i[0],c=n[u]||0,s="".concat(u," ").concat(c);n[u]=c+1;var f=l(s),d={css:i[1],media:i[2],sourceMap:i[3]};-1!==f?(a[f].references++,a[f].updater(d)):a.push({identifier:s,updater:y(d,t),references:1}),r.push(s)}return r}function c(e){var t=document.createElement("style"),r=e.attributes||{};if(void 0===r.nonce){var o=n.nc;o&&(r.nonce=o)}if(Object.keys(r).forEach((function(e){t.setAttribute(e,r[e])})),"function"==typeof e.insert)e.insert(t);else{var a=i(e.insert||"head");if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(t)}return t}var s,f=(s=[],function(e,t){return s[e]=t,s.filter(Boolean).join("\n")});function d(e,t,n,r){var o=n?"":r.media?"@media ".concat(r.media," {").concat(r.css,"}"):r.css;if(e.styleSheet)e.styleSheet.cssText=f(t,o);else{var i=document.createTextNode(o),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(i,a[t]):e.appendChild(i)}}function p(e,t,n){var r=n.css,o=n.media,i=n.sourceMap;if(o?e.setAttribute("media",o):e.removeAttribute("media"),i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleSheet)e.styleSheet.cssText=r;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(r))}}var m=null,h=0;function y(e,t){var n,r,o;if(t.singleton){var i=h++;n=m||(m=c(t)),r=d.bind(null,n,i,!1),o=d.bind(null,n,i,!0)}else n=c(t),r=p.bind(null,n,t),o=function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(n)};return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){(t=t||{}).singleton||"boolean"==typeof t.singleton||(t.singleton=o());var n=u(e=e||[],t);return function(e){if(e=e||[],"[object Array]"===Object.prototype.toString.call(e)){for(var r=0;r<n.length;r++){var o=l(n[r]);a[o].references--}for(var i=u(e,t),c=0;c<n.length;c++){var s=l(n[c]);0===a[s].references&&(a[s].updater(),a.splice(s,1))}n=i}}}},function(e,t,n){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=e(t);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(r)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(o[a]=!0)}for(var l=0;l<e.length;l++){var u=[].concat(e[l]);r&&o[u[0]]||(n&&(u[2]?u[2]="".concat(n," and ").concat(u[2]):u[2]=n),t.push(u))}},t}},function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n(0),o=n.n(r).a.createContext(!1)},function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,"exports",{enumerable:!0}),t.webpackPolyfill=1}return t}},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".alert{padding:1rem;background:#bdd7ec;border:1px solid #339aec}.alert.error{background:#ffc6c1;border:1px solid #8c3c2f}.alert.success{background:#c3ffbd;border:1px solid #3eb641}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".type-switch{margin:0 auto}.type-switch button{font-size:.95rem;font-weight:bold;background:#fff;text-shadow:1px 1px 1px #f8f8f8;padding:1rem 1.5rem;border:none;border-radius:0}.type-switch button:hover{cursor:pointer}.type-switch button.active{color:#fff;background:#333;text-shadow:1px 1px 1px #000}.type-switch button:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px}.type-switch button:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,"#header{background:#eee;border-bottom:1px solid #c9c9c9}#header .container{display:flex;flex-direction:row;align-items:center;padding:1rem}#header #logo{width:50px}#header #title{display:none}#header #write-mode{display:flex;align-items:center;padding:.9rem 1rem;border:1px solid #ccc;border-radius:5px;background:linear-gradient(180deg, #fff 0%, #ddd 100%)}#header #write-mode:hover{cursor:pointer;background:linear-gradient(0deg, #fff 0%, #ddd 100%)}#header #write-mode label{font-weight:bold;text-shadow:1px 1px 1px #fff}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".meta:not(:last-child){margin-right:.5rem}.meta__attributes{display:flex;flex-direction:row;list-style:none;padding-left:0;margin:0}.meta-attribute{padding-left:1rem;padding-right:1rem;border-right:1px solid #ccc}.meta-attribute:first-child{padding-left:0 !important}.meta-attribute:last-child{padding-right:0;border-right:0}.meta-attribute label{display:block;font-weight:bold;text-transform:capitalize;padding-bottom:.1rem}.meta-attribute pre{margin:0}.meta-none{color:#555;font-style:italic}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".reflection{border-left:5px solid #ccc;background:#efefef;margin-right:1rem;margin-left:11px;margin-bottom:1px;overflow:hidden;transition:max-height .5s ease-out,opacity 1s linear;max-height:999px}.reflection.hidden{opacity:0;max-height:0}.reflection:last-child{margin-bottom:1rem}.reflection.pass{border-left-color:#3eb641;background-color:#c3ffbd}.reflection.fail{border-left-color:#8c3c2f;background-color:#ffc6c1}.reflection.neutral{border-left-color:#339aec;background-color:#bdd7ec}.reflection .reflection__summary{display:flex;align-items:center;flex-direction:row;padding:1rem}.reflection .reflection__summary .title{color:#777;font-weight:bold;margin-right:1rem}.reflection .reflection__summary .method{font-weight:bold;margin-right:1rem}.reflection .reflection__summary .actions{margin-left:auto}.reflection .reflection__details{padding:1rem;background:#fff}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".io{display:flex;flex-direction:row;align-items:center;padding:.75rem 1rem;border:1px solid #aaa;border-radius:5px}.io:not(:last-child){margin-bottom:.5rem}.io h4{margin:0;color:#777;font-size:1.2rem;font-weight:normal;margin-right:1.25rem}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".execution{background:#333;margin-bottom:1px;border-left:5px solid #ccc;opacity:1;overflow:hidden;transition:max-height .5s ease-out,opacity 1s linear}.execution:hover{background:#444545}.execution.hidden{opacity:0;max-height:0}.execution.pass{border-left-color:#3eb641}.execution.pass .status{color:#3eb641}.execution.fail{border-left-color:#8c3c2f}.execution.fail .status{color:#8c3c2f}.execution.neutral{border-left-color:#339aec}.execution.neutral .status{color:#339aec}.execution.open{background:#333;border-left-color:#333}.execution--summary{display:flex;align-items:center;flex-direction:row;padding:1rem;padding-left:11px}.execution--summary:hover{cursor:pointer}.execution--summary .timestamp{color:#fff}.execution--summary .status{margin-left:auto;font-weight:bold;text-transform:uppercase}.execution--details{overflow:auto}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".actions{margin-left:auto}.actions button{border:none;color:#fff;background:#000;padding:.5rem 1rem;margin-left:.5rem;border-radius:.25rem}.actions button:hover{cursor:pointer;background:#222}.actions button.keep{background:#45487e}.actions button.delete{background:#7e3837}.actions button.disabled{background:#555}.actions button.disabled:hover{background:#555;cursor:not-allowed}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,"",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,"body{padding:0;margin:0;font-family:Arial;background:#fefefe}.container{max-width:1200px;margin:0 auto;padding:1rem}",""]),t.default=o},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1);n(42);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,l=e[Symbol.iterator]();!(r=(a=l.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==l.return||l.return()}finally{if(o)throw i}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=p(e);if(t){var o=p(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var m=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),i.call(this,e)}return t=a,(n=[{key:"render",value:function(){var e=this;return o.a.createElement("div",{className:"meta"},o.a.createElement("ul",{className:"meta__attributes"},Object.entries(this.props.meta).map((function(t){var n=l(t,2),r=n[0];return n[1],o.a.createElement("li",{className:"meta-attribute",key:"meta-attribute-".concat(r)},o.a.createElement("label",null,r,":"),o.a.createElement("span",{className:"value"},e.props.meta[r]))}))))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);t.a=Object(i.hot)(e)(m)}).call(this,n(5)(e))},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(35)},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(28);function l(e){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=d(e);if(t){var o=d(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return f(this,n)}}function f(e,t){return!t||"object"!==l(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function d(e){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var p=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(l,e);var t,n,r,i=s(l);function l(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),(t=i.call(this,e)).state={},t.create_executions(e.reflections),t}return t=l,(n=[{key:"create_executions",value:function(e){var t={};e.forEach((function(e){if(null==e.base_id){var n="".concat(e.exe_id,"-").concat(e.ref_num);t[n]={id:e.exe_id,number:e.ref_num,status:"pass",timestamp:e.time,reflections:[e]}}else n="".concat(e.base_id,"-").concat(e.ref_num),t[n].reflections.push(e);"fail"==e.status&&(t[n].status="fail")}));var n=[];Object.values(t).forEach((function(e){n.push(e)}));var r=n.sort((function(e,t){return e.timestamp<t.timestamp?1:-1}));this.state.executions=r}},{key:"render",value:function(){return o.a.createElement("div",{id:"executions"},this.state.executions.map((function(e,t){return o.a.createElement(a.a,{execution:e,key:e.id+"-"+e.number})})))}}])&&u(t.prototype,n),r&&u(t,r),l}(o.a.Component);t.a=Object(i.hot)(e)(p)}).call(this,n(5)(e))},function(e,t,n){"use strict";
1
+ !function(e){var t=window.webpackHotUpdate;window.webpackHotUpdate=function(e,n){!function(e,t){if(!x[e]||!w[e])return;for(var n in w[e]=!1,t)Object.prototype.hasOwnProperty.call(t,n)&&(m[n]=t[n]);0==--v&&0===b&&T()}(e,n),t&&t(e,n)};var n,r=!0,o="5caa4f52f5a14d0a0bb2",i={},a=[],l=[];function u(e){var t=O[e];if(!t)return N;var r=function(r){return t.hot.active?(O[r]?-1===O[r].parents.indexOf(e)&&O[r].parents.push(e):(a=[e],n=r),-1===t.children.indexOf(r)&&t.children.push(r)):(console.warn("[HMR] unexpected require("+r+") from disposed module "+e),a=[]),N(r)},o=function(e){return{configurable:!0,enumerable:!0,get:function(){return N[e]},set:function(t){N[e]=t}}};for(var i in N)Object.prototype.hasOwnProperty.call(N,i)&&"e"!==i&&"t"!==i&&Object.defineProperty(r,i,o(i));return r.e=function(e){return"ready"===f&&d("prepare"),b++,N.e(e).then(t,(function(e){throw t(),e}));function t(){b--,"prepare"===f&&(g[e]||S(e),0===b&&0===v&&T())}},r.t=function(e,t){return 1&t&&(e=r(e)),N.t(e,-2&t)},r}function c(t){var r={_acceptedDependencies:{},_declinedDependencies:{},_selfAccepted:!1,_selfDeclined:!1,_selfInvalidated:!1,_disposeHandlers:[],_main:n!==t,active:!0,accept:function(e,t){if(void 0===e)r._selfAccepted=!0;else if("function"==typeof e)r._selfAccepted=e;else if("object"==typeof e)for(var n=0;n<e.length;n++)r._acceptedDependencies[e[n]]=t||function(){};else r._acceptedDependencies[e]=t||function(){}},decline:function(e){if(void 0===e)r._selfDeclined=!0;else if("object"==typeof e)for(var t=0;t<e.length;t++)r._declinedDependencies[e[t]]=!0;else r._declinedDependencies[e]=!0},dispose:function(e){r._disposeHandlers.push(e)},addDisposeHandler:function(e){r._disposeHandlers.push(e)},removeDisposeHandler:function(e){var t=r._disposeHandlers.indexOf(e);t>=0&&r._disposeHandlers.splice(t,1)},invalidate:function(){switch(this._selfInvalidated=!0,f){case"idle":(m={})[t]=e[t],d("ready");break;case"ready":C(t);break;case"prepare":case"check":case"dispose":case"apply":(y=y||[]).push(t)}},check:E,apply:_,status:function(e){if(!e)return f;s.push(e)},addStatusHandler:function(e){s.push(e)},removeStatusHandler:function(e){var t=s.indexOf(e);t>=0&&s.splice(t,1)},data:i[t]};return n=void 0,r}var s=[],f="idle";function d(e){f=e;for(var t=0;t<s.length;t++)s[t].call(null,e)}var p,m,h,y,v=0,b=0,g={},w={},x={};function k(e){return+e+""===e?+e:e}function E(e){if("idle"!==f)throw new Error("check() is only allowed in idle status");return r=e,d("check"),(t=1e4,t=t||1e4,new Promise((function(e,n){if("undefined"==typeof XMLHttpRequest)return n(new Error("No browser support"));try{var r=new XMLHttpRequest,i=N.p+""+o+".hot-update.json";r.open("GET",i,!0),r.timeout=t,r.send(null)}catch(e){return n(e)}r.onreadystatechange=function(){if(4===r.readyState)if(0===r.status)n(new Error("Manifest request to "+i+" timed out."));else if(404===r.status)e();else if(200!==r.status&&304!==r.status)n(new Error("Manifest request to "+i+" failed."));else{try{var t=JSON.parse(r.responseText)}catch(e){return void n(e)}e(t)}}}))).then((function(e){if(!e)return d(P()?"ready":"idle"),null;w={},g={},x=e.c,h=e.h,d("prepare");var t=new Promise((function(e,t){p={resolve:e,reject:t}}));m={};return S(0),"prepare"===f&&0===b&&0===v&&T(),t}));var t}function S(e){x[e]?(w[e]=!0,v++,function(e){var t=document.createElement("script");t.charset="utf-8",t.src=N.p+""+e+"."+o+".hot-update.js",document.head.appendChild(t)}(e)):g[e]=!0}function T(){d("ready");var e=p;if(p=null,e)if(r)Promise.resolve().then((function(){return _(r)})).then((function(t){e.resolve(t)}),(function(t){e.reject(t)}));else{var t=[];for(var n in m)Object.prototype.hasOwnProperty.call(m,n)&&t.push(k(n));e.resolve(t)}}function _(t){if("ready"!==f)throw new Error("apply() is only allowed in ready status");return function t(r){var l,u,c,s,f;function p(e){for(var t=[e],n={},r=t.map((function(e){return{chain:[e],id:e}}));r.length>0;){var o=r.pop(),i=o.id,a=o.chain;if((s=O[i])&&(!s.hot._selfAccepted||s.hot._selfInvalidated)){if(s.hot._selfDeclined)return{type:"self-declined",chain:a,moduleId:i};if(s.hot._main)return{type:"unaccepted",chain:a,moduleId:i};for(var l=0;l<s.parents.length;l++){var u=s.parents[l],c=O[u];if(c){if(c.hot._declinedDependencies[i])return{type:"declined",chain:a.concat([u]),moduleId:i,parentId:u};-1===t.indexOf(u)&&(c.hot._acceptedDependencies[i]?(n[u]||(n[u]=[]),v(n[u],[i])):(delete n[u],t.push(u),r.push({chain:a.concat([u]),id:u})))}}}}return{type:"accepted",moduleId:e,outdatedModules:t,outdatedDependencies:n}}function v(e,t){for(var n=0;n<t.length;n++){var r=t[n];-1===e.indexOf(r)&&e.push(r)}}P();var b={},g=[],w={},E=function(){console.warn("[HMR] unexpected require("+T.moduleId+") to disposed module")};for(var S in m)if(Object.prototype.hasOwnProperty.call(m,S)){var T;f=k(S),T=m[S]?p(f):{type:"disposed",moduleId:S};var _=!1,C=!1,j=!1,R="";switch(T.chain&&(R="\nUpdate propagation: "+T.chain.join(" -> ")),T.type){case"self-declined":r.onDeclined&&r.onDeclined(T),r.ignoreDeclined||(_=new Error("Aborted because of self decline: "+T.moduleId+R));break;case"declined":r.onDeclined&&r.onDeclined(T),r.ignoreDeclined||(_=new Error("Aborted because of declined dependency: "+T.moduleId+" in "+T.parentId+R));break;case"unaccepted":r.onUnaccepted&&r.onUnaccepted(T),r.ignoreUnaccepted||(_=new Error("Aborted because "+f+" is not accepted"+R));break;case"accepted":r.onAccepted&&r.onAccepted(T),C=!0;break;case"disposed":r.onDisposed&&r.onDisposed(T),j=!0;break;default:throw new Error("Unexception type "+T.type)}if(_)return d("abort"),Promise.reject(_);if(C)for(f in w[f]=m[f],v(g,T.outdatedModules),T.outdatedDependencies)Object.prototype.hasOwnProperty.call(T.outdatedDependencies,f)&&(b[f]||(b[f]=[]),v(b[f],T.outdatedDependencies[f]));j&&(v(g,[T.moduleId]),w[f]=E)}var D,z=[];for(u=0;u<g.length;u++)f=g[u],O[f]&&O[f].hot._selfAccepted&&w[f]!==E&&!O[f].hot._selfInvalidated&&z.push({module:f,parents:O[f].parents.slice(),errorHandler:O[f].hot._selfAccepted});d("dispose"),Object.keys(x).forEach((function(e){!1===x[e]&&function(e){delete installedChunks[e]}(e)}));var I,M,F=g.slice();for(;F.length>0;)if(f=F.pop(),s=O[f]){var A={},L=s.hot._disposeHandlers;for(c=0;c<L.length;c++)(l=L[c])(A);for(i[f]=A,s.hot.active=!1,delete O[f],delete b[f],c=0;c<s.children.length;c++){var U=O[s.children[c]];U&&((D=U.parents.indexOf(f))>=0&&U.parents.splice(D,1))}}for(f in b)if(Object.prototype.hasOwnProperty.call(b,f)&&(s=O[f]))for(M=b[f],c=0;c<M.length;c++)I=M[c],(D=s.children.indexOf(I))>=0&&s.children.splice(D,1);d("apply"),void 0!==h&&(o=h,h=void 0);for(f in m=void 0,w)Object.prototype.hasOwnProperty.call(w,f)&&(e[f]=w[f]);var H=null;for(f in b)if(Object.prototype.hasOwnProperty.call(b,f)&&(s=O[f])){M=b[f];var V=[];for(u=0;u<M.length;u++)if(I=M[u],l=s.hot._acceptedDependencies[I]){if(-1!==V.indexOf(l))continue;V.push(l)}for(u=0;u<V.length;u++){l=V[u];try{l(M)}catch(e){r.onErrored&&r.onErrored({type:"accept-errored",moduleId:f,dependencyId:M[u],error:e}),r.ignoreErrored||H||(H=e)}}}for(u=0;u<z.length;u++){var W=z[u];f=W.module,a=W.parents,n=f;try{N(f)}catch(e){if("function"==typeof W.errorHandler)try{W.errorHandler(e)}catch(t){r.onErrored&&r.onErrored({type:"self-accept-error-handler-errored",moduleId:f,error:t,originalError:e}),r.ignoreErrored||H||(H=t),H||(H=e)}else r.onErrored&&r.onErrored({type:"self-accept-errored",moduleId:f,error:e}),r.ignoreErrored||H||(H=e)}}if(H)return d("fail"),Promise.reject(H);if(y)return t(r).then((function(e){return g.forEach((function(t){e.indexOf(t)<0&&e.push(t)})),e}));return d("idle"),new Promise((function(e){e(g)}))}(t=t||{})}function P(){if(y)return m||(m={}),y.forEach(C),y=void 0,!0}function C(t){Object.prototype.hasOwnProperty.call(m,t)||(m[t]=e[t])}var O={};function N(t){if(O[t])return O[t].exports;var n=O[t]={i:t,l:!1,exports:{},hot:c(t),parents:(l=a,a=[],l),children:[]};return e[t].call(n.exports,n,n.exports,u(t)),n.l=!0,n.exports}N.m=e,N.c=O,N.d=function(e,t,n){N.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},N.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},N.t=function(e,t){if(1&t&&(e=N(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(N.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)N.d(n,r,function(t){return e[t]}.bind(null,r));return n},N.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return N.d(t,"a",t),t},N.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},N.p="/dist/",N.h=function(){return o},u(33)(N.s=33)}([function(e,t,n){"use strict";e.exports=n(34)},function(e,t,n){"use strict";e.exports=n(39)},function(e,t,n){"use strict";var r,o=function(){return void 0===r&&(r=Boolean(window&&document&&document.all&&!window.atob)),r},i=function(){var e={};return function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}e[t]=n}return e[t]}}(),a=[];function l(e){for(var t=-1,n=0;n<a.length;n++)if(a[n].identifier===e){t=n;break}return t}function u(e,t){for(var n={},r=[],o=0;o<e.length;o++){var i=e[o],u=t.base?i[0]+t.base:i[0],c=n[u]||0,s="".concat(u," ").concat(c);n[u]=c+1;var f=l(s),d={css:i[1],media:i[2],sourceMap:i[3]};-1!==f?(a[f].references++,a[f].updater(d)):a.push({identifier:s,updater:y(d,t),references:1}),r.push(s)}return r}function c(e){var t=document.createElement("style"),r=e.attributes||{};if(void 0===r.nonce){var o=n.nc;o&&(r.nonce=o)}if(Object.keys(r).forEach((function(e){t.setAttribute(e,r[e])})),"function"==typeof e.insert)e.insert(t);else{var a=i(e.insert||"head");if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(t)}return t}var s,f=(s=[],function(e,t){return s[e]=t,s.filter(Boolean).join("\n")});function d(e,t,n,r){var o=n?"":r.media?"@media ".concat(r.media," {").concat(r.css,"}"):r.css;if(e.styleSheet)e.styleSheet.cssText=f(t,o);else{var i=document.createTextNode(o),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(i,a[t]):e.appendChild(i)}}function p(e,t,n){var r=n.css,o=n.media,i=n.sourceMap;if(o?e.setAttribute("media",o):e.removeAttribute("media"),i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleSheet)e.styleSheet.cssText=r;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(r))}}var m=null,h=0;function y(e,t){var n,r,o;if(t.singleton){var i=h++;n=m||(m=c(t)),r=d.bind(null,n,i,!1),o=d.bind(null,n,i,!0)}else n=c(t),r=p.bind(null,n,t),o=function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(n)};return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else o()}}e.exports=function(e,t){(t=t||{}).singleton||"boolean"==typeof t.singleton||(t.singleton=o());var n=u(e=e||[],t);return function(e){if(e=e||[],"[object Array]"===Object.prototype.toString.call(e)){for(var r=0;r<n.length;r++){var o=l(n[r]);a[o].references--}for(var i=u(e,t),c=0;c<n.length;c++){var s=l(n[c]);0===a[s].references&&(a[s].updater(),a.splice(s,1))}n=i}}}},function(e,t,n){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=e(t);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(r)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(o[a]=!0)}for(var l=0;l<e.length;l++){var u=[].concat(e[l]);r&&o[u[0]]||(n&&(u[2]?u[2]="".concat(n," and ").concat(u[2]):u[2]=n),t.push(u))}},t}},function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n(0),o=n.n(r).a.createContext(!1)},function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,"exports",{enumerable:!0}),t.webpackPolyfill=1}return t}},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".alert{padding:1rem;background:#bdd7ec;border:1px solid #339aec}.alert.error{background:#ffc6c1;border:1px solid #d04800}.alert.success{background:#c3ffbd;border:1px solid #3eb641}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,"@media(min-width: 600px){.type-switch{position:absolute;left:0;right:0;text-align:center}}.type-switch button{font-size:.95rem;font-weight:bold;background:#fff;text-shadow:1px 1px 1px #f8f8f8;padding:1rem 1.5rem;border:none;border-radius:0}.type-switch button:hover{cursor:pointer}.type-switch button.active{color:#fff;background:#333;text-shadow:1px 1px 1px #000}.type-switch button:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px}.type-switch button:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,"#header{background:#eee;border-bottom:1px solid #c9c9c9}#header .container{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:1rem;position:relative}#header #logo{width:50px}#header #title{display:none}#header #write-mode{display:flex;align-items:center;padding:.9rem 1rem;border:1px solid #ccc;border-radius:5px;background:linear-gradient(180deg, #fff 0%, #ddd 100%)}#header #write-mode:hover{cursor:pointer;background:linear-gradient(0deg, #fff 0%, #ddd 100%)}#header #write-mode label{font-weight:bold;text-shadow:1px 1px 1px #fff}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".meta:not(:last-child){margin-right:.5rem}.meta__attributes{display:flex;flex-direction:row;list-style:none;padding-left:0;margin:0}.meta-attribute{padding-left:1rem;padding-right:1rem;border-right:1px solid #ccc}.meta-attribute:first-child{padding-left:0 !important}.meta-attribute:last-child{padding-right:0;border-right:0}.meta-attribute label{display:block;font-weight:bold;text-transform:capitalize;padding-bottom:.1rem}.meta-attribute pre{margin:0}.meta-none{color:#555;font-style:italic}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".reflection{border-left:5px solid #ccc;background:#efefef;margin-bottom:1px;overflow:hidden;transition:max-height .5s ease-out,opacity 1s linear;max-height:999px}.reflection.hidden{opacity:0;max-height:0}.reflection:last-child{margin-bottom:1rem}.reflection.pass{border-left-color:#3eb641;background-color:#c3ffbd}.reflection.fail{border-left-color:#d04800;background-color:#ffc6c1}.reflection.neutral{border-left-color:#339aec;background-color:#bdd7ec}.reflection .reflection__summary{display:flex;align-items:center;flex-direction:row;padding:1rem}.reflection .reflection__summary .title{color:#777;font-weight:bold;margin-right:1rem}.reflection .reflection__summary .method{font-weight:bold;margin-right:1rem}.reflection .reflection__summary .actions{margin-left:auto}.reflection .reflection__details{padding:1rem;background:#fff}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".io{display:flex;flex-direction:row;align-items:center;padding:.75rem 1rem;border:1px solid #aaa;border-radius:5px}.io:not(:last-child){margin-bottom:.5rem}.io h4{margin:0;color:#777;font-size:1.2rem;font-weight:normal;margin-right:1.25rem}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".execution{background:#333;margin-bottom:1px;border-left:10px solid #ccc;padding-left:2px;padding-right:12px;opacity:1;overflow:hidden;transition:max-height .5s ease-out,opacity 1s linear}.execution:hover{background:#444545}.execution.hidden{opacity:0;max-height:0}.execution.pass{border-left-color:#3eb641}.execution.pass .status{color:#3eb641}.execution.fail{border-left-color:#d04800}.execution.fail .status{color:#d04800}.execution.neutral{border-left-color:#339aec}.execution.neutral .status{color:#339aec}.execution.open{background:#333;border-left-color:#333}.execution--summary{display:flex;align-items:center;flex-direction:row;justify-content:space-between;padding:1rem 0;padding-left:10px;position:relative}.execution--summary:hover{cursor:pointer}.execution--summary .timestamp{color:#fff}.execution--summary .control-label{font-weight:bold;color:#339aec;text-transform:uppercase;pointer-events:none}@media(min-width: 600px){.execution--summary .control-label{position:absolute;left:0;right:0;text-align:center}}.execution--summary .status{text-align:right;font-weight:bold;text-transform:uppercase}.execution--details{overflow:auto}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,".actions button{border:none;color:#fff;background:#000;padding:.5rem 1rem;margin-left:.5rem;border-radius:.25rem}.actions button:hover{cursor:pointer;background:#222}.actions button.keep{background:#45487e}.actions button.delete{background:#7e3837}.actions button.disabled{background:#555}.actions button.disabled:hover{background:#555;cursor:not-allowed}",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,"",""]),t.default=o},function(e,t,n){"use strict";n.r(t);var r=n(3),o=n.n(r)()((function(e){return e[1]}));o.push([e.i,"body{padding:0;margin:0;font-family:Arial;background:#fefefe}.container{max-width:1200px;margin:0 auto;padding:1rem}",""]),t.default=o},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1);n(42);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,l=e[Symbol.iterator]();!(r=(a=l.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==l.return||l.return()}finally{if(o)throw i}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=p(e);if(t){var o=p(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var m=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),i.call(this,e)}return t=a,(n=[{key:"render",value:function(){var e=this;return o.a.createElement("div",{className:"meta"},o.a.createElement("ul",{className:"meta__attributes"},Object.entries(this.props.meta).map((function(t){var n=l(t,2),r=n[0];return n[1],o.a.createElement("li",{className:"meta-attribute",key:"meta-attribute-".concat(r)},o.a.createElement("label",null,r,":"),o.a.createElement("span",{className:"value"},e.props.meta[r]))}))))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);t.a=Object(i.hot)(e)(m)}).call(this,n(5)(e))},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(35)},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(28);function l(e){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=d(e);if(t){var o=d(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return f(this,n)}}function f(e,t){return!t||"object"!==l(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function d(e){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var p=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(l,e);var t,n,r,i=s(l);function l(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),(t=i.call(this,e)).state={},t.create_executions(e.reflections),t}return t=l,(n=[{key:"create_executions",value:function(e){var t={};e.forEach((function(e){var n="".concat(e.eid,"-").concat(e.num);t.hasOwnProperty(n)?t[n].reflections.push(e):(t[n]={id:e.eid,number:e.num,status:"pass",timestamp:e.time,reflections:[e]},t[n].is_control=!1,0===e.num&&(t[n].is_control=!0)),"fail"==e.status&&(t[n].status="fail")}));var n=[];Object.values(t).forEach((function(e){n.push(e)}));var r=n.sort((function(e,t){return e.timestamp<t.timestamp?1:-1}));this.state.executions=r}},{key:"render",value:function(){return o.a.createElement("div",{id:"executions"},this.state.executions.map((function(e,t){return o.a.createElement(a.a,{execution:e,key:e.id+"-"+e.number})})))}}])&&u(t.prototype,n),r&&u(t,r),l}(o.a.Component);t.a=Object(i.hot)(e)(p)}).call(this,n(5)(e))},function(e,t,n){"use strict";
2
2
  /*
3
3
  object-assign
4
4
  (c) Sindre Sorhus
5
5
  @license MIT
6
- */var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,l,u=a(e),c=1;c<arguments.length;c++){for(var s in n=Object(arguments[c]))o.call(n,s)&&(u[s]=n[s]);if(r){l=r(n);for(var f=0;f<l.length;f++)i.call(n,l[f])&&(u[l[f]]=n[l[f]])}}return u}},function(e,t,n){"use strict";var r=n(2),o=n.n(r),i=n(10),a={insert:"head",singleton:!1},l=o()(i.default,a);if(!i.default.locals||e.hot.invalidate){var u=i.default.locals;e.hot.accept(10,function(t){i=n(10),function(e,t,n){if(!e&&t||e&&!t)return!1;var r;for(r in e)if((!n||"default"!==r)&&e[r]!==t[r])return!1;for(r in t)if(!(n&&"default"===r||e[r]))return!1;return!0}(u,i.default.locals,void 0)?(u=i.default.locals,l(i.default)):e.hot.invalidate()}.bind(this))}e.hot.dispose((function(){l()}));i.default.locals},function(e,t,n){"use strict";var r=n(2),o=n.n(r),i=n(11),a={insert:"head",singleton:!1},l=o()(i.default,a);if(!i.default.locals||e.hot.invalidate){var u=i.default.locals;e.hot.accept(11,function(t){i=n(11),function(e,t,n){if(!e&&t||e&&!t)return!1;var r;for(r in e)if((!n||"default"!==r)&&e[r]!==t[r])return!1;for(r in t)if(!(n&&"default"===r||e[r]))return!1;return!0}(u,i.default.locals,void 0)?(u=i.default.locals,l(i.default)):e.hot.invalidate()}.bind(this))}e.hot.dispose((function(){l()}));i.default.locals},function(e,t,n){"use strict";var r=n(2),o=n.n(r),i=n(12),a={insert:"head",singleton:!1},l=o()(i.default,a);if(!i.default.locals||e.hot.invalidate){var u=i.default.locals;e.hot.accept(12,function(t){i=n(12),function(e,t,n){if(!e&&t||e&&!t)return!1;var r;for(r in e)if((!n||"default"!==r)&&e[r]!==t[r])return!1;for(r in t)if(!(n&&"default"===r||e[r]))return!1;return!0}(u,i.default.locals,void 0)?(u=i.default.locals,l(i.default)):e.hot.invalidate()}.bind(this))}e.hot.dispose((function(){l()}));i.default.locals},function(e,t,n){"use strict";var r=n(2),o=n.n(r),i=n(13),a={insert:"head",singleton:!1},l=o()(i.default,a);if(!i.default.locals||e.hot.invalidate){var u=i.default.locals;e.hot.accept(13,function(t){i=n(13),function(e,t,n){if(!e&&t||e&&!t)return!1;var r;for(r in e)if((!n||"default"!==r)&&e[r]!==t[r])return!1;for(r in t)if(!(n&&"default"===r||e[r]))return!1;return!0}(u,i.default.locals,void 0)?(u=i.default.locals,l(i.default)):e.hot.invalidate()}.bind(this))}e.hot.dispose((function(){l()}));i.default.locals},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=(n(17),n(1)),a=n(4),l=n(25),u=n(26),c=n(18),s=n(30);n(43),n(44);function f(e){return(f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,l=e[Symbol.iterator]();!(r=(a=l.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==l.return||l.return()}finally{if(o)throw i}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function m(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function h(e,t){return(h=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=g(e);if(t){var o=g(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return v(this,n)}}function v(e,t){return!t||"object"!==f(t)&&"function"!=typeof t?b(e):t}function b(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function g(e){return(g=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function w(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var x=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&h(e,t)}(f,e);var t,n,r,i=y(f);function f(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,f),w(b(t=i.call(this,e)),"addAlert",(function(e,n){var r={type:e,message:n},o=t.state.alerts;o.push(r),t.setState({alerts:o})})),w(b(t),"switchType",(function(e){var n={};Object.entries(t.state.types).forEach((function(t,r){var o=d(t,2),i=o[0],a=o[1];a.active=i===e,n[i]=a})),t.setState({types:n}),"reflection"==e?t.setState({results:o.a.createElement(c.a,{reflections:t.state.db.reflections})}):"control"==e&&t.setState({results:o.a.createElement(s.a,{controls:t.state.db.controls})})})),t.state={},t.state.db={},t.state.alerts=[],t.state.results=[],t.state.writeMode=!1,t.state.types={reflection:{title:"Reflections",active:!0},control:{title:"Controls",active:!1}},"file:"!=window.location.protocol&&(t.state.writeMode=!0),t}return t=f,(n=[{key:"componentDidMount",value:function(){var e=this;window.addEventListener("load",(function(t){try{e.setState({db:JSON.parse(db)}),console.log("DATA:"),console.log(e.state.db)}catch(t){e.addAlert("error","Couldn't load database.")}null!=db&&e.setState({results:o.a.createElement(c.a,{reflections:e.state.db.reflections})})}))}},{key:"render",value:function(){return o.a.createElement(o.a.Fragment,null,o.a.createElement(a.a.Provider,{value:this.state.writeMode},o.a.createElement(u.a,{types:this.state.types,switchType:this.switchType}),o.a.createElement("div",{className:"container"},0!=this.state.alerts.length?o.a.createElement(l.a,{alerts:this.state.alerts}):null,o.a.createElement("main",{id:"content"},this.state.results))))}}])&&m(t.prototype,n),r&&m(t,r),f}(r.Component);t.a=Object(i.hot)(e)(x)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1);n(38);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function l(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=f(e);if(t){var o=f(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return s(this,n)}}function s(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var d=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(a,e);var t,n,r,i=c(a);function a(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),i.call(this,e)}return t=a,(n=[{key:"render",value:function(){return o.a.createElement("div",{id:"alerts"},this.props.alerts.map((function(e,t){return o.a.createElement("div",{className:"alert ".concat(e.type),key:"alert-".concat(t)},e.message)})))}}])&&l(t.prototype,n),r&&l(t,r),a}(o.a.Component);t.a=Object(i.hot)(e)(d)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(27);n(41);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=p(e);if(t){var o=p(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var m,h,y,v=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),i.call(this,e)}return t=a,(n=[{key:"render",value:function(){var e="Read-Only";return 1==this.context&&(e="Read/Write"),o.a.createElement("header",{id:"header"},o.a.createElement("div",{className:"container"},o.a.createElement("svg",{id:"logo",enableBackground:"new 0 0 500 500",viewBox:"0 0 500 500",xmlns:"http://www.w3.org/2000/svg"},o.a.createElement("path",{d:"m307.5 80.5h-115l-57.5 205h230z",fill:"#0047d0"}),o.a.createElement("path",{d:"m178 76.5-53.1-44-117.9 139 116 112z",fill:"#d04800"}),o.a.createElement("path",{d:"m190.4 467.5h115l57.5-168h-229z",fill:"#0047d0",opacity:".7"}),o.a.createElement("path",{d:"m177 467.5-81-85-92-197 115 113z",fill:"#d04800",opacity:".7"}),o.a.createElement("g",{fill:"#008c33"},o.a.createElement("path",{d:"m322 76.5 53.1-44 118 139-116 112z"}),o.a.createElement("path",{d:"m320 467.5 84-85 92-197-117 113z",opacity:".7"}))),o.a.createElement("h1",{id:"title"},"Reflekt"),o.a.createElement(l.a,{types:this.props.types,switchType:this.props.switchType}),o.a.createElement("div",{id:"write-mode",className:this.context?"read-write":"read-only"},o.a.createElement("label",null,e),o.a.createElement("div",{className:"icon"}))))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);m=v,h="contextType",y=a.a,h in m?Object.defineProperty(m,h,{value:y,enumerable:!0,configurable:!0,writable:!0}):m[h]=y,t.a=Object(i.hot)(e)(v)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1);n(40);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,l=e[Symbol.iterator]();!(r=(a=l.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==l.return||l.return()}finally{if(o)throw i}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var h=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t,n,r,o;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),t=i.call(this,e),n=p(t),o=function(e,n){t.props.switchType(e)},(r="activate")in n?Object.defineProperty(n,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[r]=o,t}return t=a,(n=[{key:"render",value:function(){var e=this;return o.a.createElement("div",{className:"type-switch"},Object.entries(this.props.types).map((function(t){var n=l(t,2),r=n[0],i=n[1];return o.a.createElement("button",{key:"switch-type-".concat(r),onClick:function(t){return e.activate(r,t)},className:i.active?"active":null},i.title)})))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);t.a=Object(i.hot)(e)(h)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(29);n(22);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),h(p(t=i.call(this,e)),"toggle",(function(){t.setState((function(e){return{open:!e.open}}))})),h(p(t),"hide",(function(e){t.setState({hidden:!0})})),t.state={open:!1,status:e.execution.status,hidden:!1},t}return t=a,(n=[{key:"render",value:function(){return o.a.createElement("div",{className:"execution ".concat(this.state.status," ").concat(this.state.open?"open":"closed"," ").concat(this.state.hidden?" hidden":" visible")},o.a.createElement("div",{className:"execution--summary",onClick:this.toggle},o.a.createElement("div",{className:"timestamp"},new Intl.DateTimeFormat("default",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(1e3*this.props.execution.timestamp)),o.a.createElement("div",{className:"status"},this.props.execution.status)),o.a.createElement("div",{className:"execution--details"},this.state.open?this.props.execution.reflections.map((function(e,t){return o.a.createElement(l.a,{reflection:e,key:"reflection-".concat(e.ref_id)})})):null))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);h(y,"contextType",a.a),t.a=Object(i.hot)(e)(y)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(16);n(20),n(21);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),h(p(t=i.call(this,e)),"hide",(function(e){t.setState({hidden:!0})})),t.state={status:e.reflection.status,hidden:!1},t}return t=a,(n=[{key:"render",value:function(){return o.a.createElement("div",{className:"reflection "+this.state.status+(this.state.hidden?" hidden":" visible")},o.a.createElement("div",{className:"reflection__summary"},o.a.createElement("span",{className:"title"},this.props.reflection.class),o.a.createElement("span",{className:"method"},this.props.reflection.method,"()")),o.a.createElement("div",{className:"reflection__details"},o.a.createElement("div",{className:"io",id:"inputs"},o.a.createElement("h4",null,"Input"),null!=this.props.reflection.inputs?this.props.reflection.inputs.map((function(e,t){return o.a.createElement(l.a,{meta:e,key:"meta-".concat(t)})})):o.a.createElement("strong",{className:"meta-none"},"none")),o.a.createElement("div",{className:"io",id:"output"},o.a.createElement("h4",null,"Output"),null!=this.props.reflection.output?o.a.createElement(l.a,{meta:this.props.reflection.output}):o.a.createElement("strong",{className:"meta-none"},"none"))))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);h(y,"contextType",a.a),t.a=Object(i.hot)(e)(y)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(31);function l(e){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=d(e);if(t){var o=d(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return f(this,n)}}function f(e,t){return!t||"object"!==l(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function d(e){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var p=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(l,e);var t,n,r,i=s(l);function l(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),(t=i.call(this,e)).state={},t.create_executions(e.controls),t}return t=l,(n=[{key:"create_executions",value:function(e){var t={};e.forEach((function(e){null==e.base_id?t[e.exe_id]={id:e.exe_id,status:"pass",timestamp:e.time,controls:[e]}:t[e.base_id].controls.push(e)}));var n=[];Object.values(t).forEach((function(e){n.push(e)}));var r=n.sort((function(e,t){return e.timestamp<t.timestamp?1:-1}));this.state.executions=r}},{key:"render",value:function(){return o.a.createElement("div",{id:"executions"},this.state.executions.map((function(e,t){return o.a.createElement(a.a,{execution:e,key:e.id})})))}}])&&u(t.prototype,n),r&&u(t,r),l}(o.a.Component);t.a=Object(i.hot)(e)(p)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(32);n(22),n(23);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),h(p(t=i.call(this,e)),"toggle",(function(){t.setState((function(e){return{open:!e.open}}))})),h(p(t),"delete_controls",(function(e,n){n.stopPropagation();var r={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({exe_id:e})};fetch("/controls/delete",r).then((function(n){return t.hide(e)}))})),h(p(t),"hide",(function(e){t.setState({hidden:!0})})),t.state={open:!1,hidden:!1},t}return t=a,(n=[{key:"render",value:function(){var e=this;return o.a.createElement("div",{className:"execution neutral ".concat(this.state.open?"open":"closed"," ").concat(this.state.hidden?" hidden":" visible")},o.a.createElement("div",{className:"execution--summary",onClick:this.toggle},o.a.createElement("div",{className:"timestamp"},new Intl.DateTimeFormat("default",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(1e3*this.props.execution.timestamp)),o.a.createElement("div",{className:"actions"},o.a.createElement("button",{className:"delete "+(this.context?"enabled":"disabled"),onClick:function(t){return e.delete_controls(e.props.execution.id,t)}},"Delete"))),o.a.createElement("div",{className:"execution--details"},this.state.open?this.props.execution.controls.map((function(e,t){return o.a.createElement(l.a,{control:e,key:"control-".concat(e.ref_id)})})):null))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);h(y,"contextType",a.a),t.a=Object(i.hot)(e)(y)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(16);n(20),n(23),n(21);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),h(p(t=i.call(this,e)),"hide",(function(e){t.setState({hidden:!0})})),h(p(t),"delete",(function(e,n){var r={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({ref_id:e})};fetch("/control/delete",r).then((function(n){return t.hide(e)}))})),t.state={hidden:!1},t}return t=a,(n=[{key:"render",value:function(){var e=this;return o.a.createElement("div",{className:"reflection neutral"+(this.state.hidden?" hidden":" visible")},o.a.createElement("div",{className:"reflection__summary"},o.a.createElement("span",{className:"title"},this.props.control.class),o.a.createElement("span",{className:"method"},this.props.control.method,"()"),null!=this.props.control.base_id?o.a.createElement("div",{className:"actions"},o.a.createElement("button",{className:"delete "+(this.context?"enabled":"disabled"),onClick:function(t){return e.delete(e.props.control.ref_id,t)}},"Delete")):null),o.a.createElement("div",{className:"reflection__details"},o.a.createElement("div",{className:"io",id:"inputs"},o.a.createElement("h4",null,"Input"),null!=this.props.control.inputs?this.props.control.inputs.map((function(e,t){return o.a.createElement(l.a,{meta:e,key:"meta-".concat(t)})})):o.a.createElement("strong",{className:"meta-none"},"none")),o.a.createElement("div",{className:"io",id:"output"},o.a.createElement("h4",null,"Output"),null!=this.props.control.output?o.a.createElement(l.a,{meta:this.props.control.output}):o.a.createElement("strong",{className:"meta-none"},"none"))))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);h(y,"contextType",a.a),t.a=Object(i.hot)(e)(y)}).call(this,n(5)(e))},function(e,t,n){"use strict";n.r(t);var r=n(0),o=n.n(r),i=n(17),a=n.n(i),l=n(24);a.a.render(o.a.createElement(l.a,null),document.getElementById("root"))},function(e,t,n){"use strict";
6
+ */var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,l,u=a(e),c=1;c<arguments.length;c++){for(var s in n=Object(arguments[c]))o.call(n,s)&&(u[s]=n[s]);if(r){l=r(n);for(var f=0;f<l.length;f++)i.call(n,l[f])&&(u[l[f]]=n[l[f]])}}return u}},function(e,t,n){"use strict";var r=n(2),o=n.n(r),i=n(10),a={insert:"head",singleton:!1},l=o()(i.default,a);if(!i.default.locals||e.hot.invalidate){var u=i.default.locals;e.hot.accept(10,function(t){i=n(10),function(e,t,n){if(!e&&t||e&&!t)return!1;var r;for(r in e)if((!n||"default"!==r)&&e[r]!==t[r])return!1;for(r in t)if(!(n&&"default"===r||e[r]))return!1;return!0}(u,i.default.locals,void 0)?(u=i.default.locals,l(i.default)):e.hot.invalidate()}.bind(this))}e.hot.dispose((function(){l()}));i.default.locals},function(e,t,n){"use strict";var r=n(2),o=n.n(r),i=n(11),a={insert:"head",singleton:!1},l=o()(i.default,a);if(!i.default.locals||e.hot.invalidate){var u=i.default.locals;e.hot.accept(11,function(t){i=n(11),function(e,t,n){if(!e&&t||e&&!t)return!1;var r;for(r in e)if((!n||"default"!==r)&&e[r]!==t[r])return!1;for(r in t)if(!(n&&"default"===r||e[r]))return!1;return!0}(u,i.default.locals,void 0)?(u=i.default.locals,l(i.default)):e.hot.invalidate()}.bind(this))}e.hot.dispose((function(){l()}));i.default.locals},function(e,t,n){"use strict";var r=n(2),o=n.n(r),i=n(12),a={insert:"head",singleton:!1},l=o()(i.default,a);if(!i.default.locals||e.hot.invalidate){var u=i.default.locals;e.hot.accept(12,function(t){i=n(12),function(e,t,n){if(!e&&t||e&&!t)return!1;var r;for(r in e)if((!n||"default"!==r)&&e[r]!==t[r])return!1;for(r in t)if(!(n&&"default"===r||e[r]))return!1;return!0}(u,i.default.locals,void 0)?(u=i.default.locals,l(i.default)):e.hot.invalidate()}.bind(this))}e.hot.dispose((function(){l()}));i.default.locals},function(e,t,n){"use strict";var r=n(2),o=n.n(r),i=n(13),a={insert:"head",singleton:!1},l=o()(i.default,a);if(!i.default.locals||e.hot.invalidate){var u=i.default.locals;e.hot.accept(13,function(t){i=n(13),function(e,t,n){if(!e&&t||e&&!t)return!1;var r;for(r in e)if((!n||"default"!==r)&&e[r]!==t[r])return!1;for(r in t)if(!(n&&"default"===r||e[r]))return!1;return!0}(u,i.default.locals,void 0)?(u=i.default.locals,l(i.default)):e.hot.invalidate()}.bind(this))}e.hot.dispose((function(){l()}));i.default.locals},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=(n(17),n(1)),a=n(4),l=n(25),u=n(26),c=n(18),s=n(30);n(43),n(44);function f(e){return(f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,l=e[Symbol.iterator]();!(r=(a=l.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==l.return||l.return()}finally{if(o)throw i}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return p(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function m(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function h(e,t){return(h=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function y(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=g(e);if(t){var o=g(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return v(this,n)}}function v(e,t){return!t||"object"!==f(t)&&"function"!=typeof t?b(e):t}function b(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function g(e){return(g=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function w(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var x=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&h(e,t)}(f,e);var t,n,r,i=y(f);function f(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,f),w(b(t=i.call(this,e)),"addAlert",(function(e,n){var r={type:e,message:n},o=t.state.alerts;o.push(r),t.setState({alerts:o})})),w(b(t),"switchType",(function(e){var n={};Object.entries(t.state.types).forEach((function(t,r){var o=d(t,2),i=o[0],a=o[1];a.active=i===e,n[i]=a})),t.setState({types:n}),"reflection"==e?t.setState({results:o.a.createElement(c.a,{reflections:t.state.db.reflections})}):"control"==e&&t.setState({results:o.a.createElement(s.a,{controls:t.state.db.controls})})})),t.state={},t.state.db={},t.state.alerts=[],t.state.results=[],t.state.writeMode=!1,t.state.types={reflection:{title:"Reflections",active:!0},control:{title:"Controls",active:!1}},"file:"!=window.location.protocol&&(t.state.writeMode=!0),t}return t=f,(n=[{key:"componentDidMount",value:function(){var e=this;window.addEventListener("load",(function(t){try{e.setState({db:JSON.parse(db)}),console.log("DATA:"),console.log(e.state.db)}catch(t){e.addAlert("error","Couldn't load database.")}null!=db&&e.setState({results:o.a.createElement(c.a,{reflections:e.state.db.reflections})})}))}},{key:"render",value:function(){return o.a.createElement(o.a.Fragment,null,o.a.createElement(a.a.Provider,{value:this.state.writeMode},o.a.createElement(u.a,{types:this.state.types,switchType:this.switchType}),o.a.createElement("div",{className:"container"},0!=this.state.alerts.length?o.a.createElement(l.a,{alerts:this.state.alerts}):null,o.a.createElement("main",{id:"content"},this.state.results))))}}])&&m(t.prototype,n),r&&m(t,r),f}(r.Component);t.a=Object(i.hot)(e)(x)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1);n(38);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function l(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=f(e);if(t){var o=f(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return s(this,n)}}function s(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function f(e){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var d=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(a,e);var t,n,r,i=c(a);function a(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),i.call(this,e)}return t=a,(n=[{key:"render",value:function(){return o.a.createElement("div",{id:"alerts"},this.props.alerts.map((function(e,t){return o.a.createElement("div",{className:"alert ".concat(e.type),key:"alert-".concat(t)},e.message)})))}}])&&l(t.prototype,n),r&&l(t,r),a}(o.a.Component);t.a=Object(i.hot)(e)(d)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(27);n(41);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=p(e);if(t){var o=p(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var m,h,y,v=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),i.call(this,e)}return t=a,(n=[{key:"render",value:function(){var e="Read-Only";return 1==this.context&&(e="Read/Write"),o.a.createElement("header",{id:"header"},o.a.createElement("div",{className:"container"},o.a.createElement("svg",{id:"logo",enableBackground:"new 0 0 500 500",viewBox:"0 0 500 500",xmlns:"http://www.w3.org/2000/svg"},o.a.createElement("path",{d:"m307.5 80.5h-115l-57.5 205h230z",fill:"#0047d0"}),o.a.createElement("path",{d:"m178 76.5-53.1-44-117.9 139 116 112z",fill:"#d04800"}),o.a.createElement("path",{d:"m190.4 467.5h115l57.5-168h-229z",fill:"#0047d0",opacity:".7"}),o.a.createElement("path",{d:"m177 467.5-81-85-92-197 115 113z",fill:"#d04800",opacity:".7"}),o.a.createElement("g",{fill:"#008c33"},o.a.createElement("path",{d:"m322 76.5 53.1-44 118 139-116 112z"}),o.a.createElement("path",{d:"m320 467.5 84-85 92-197-117 113z",opacity:".7"}))),o.a.createElement("h1",{id:"title"},"Reflekt"),o.a.createElement(l.a,{types:this.props.types,switchType:this.props.switchType}),o.a.createElement("div",{id:"write-mode",className:this.context?"read-write":"read-only"},o.a.createElement("label",null,e),o.a.createElement("div",{className:"icon"}))))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);m=v,h="contextType",y=a.a,h in m?Object.defineProperty(m,h,{value:y,enumerable:!0,configurable:!0,writable:!0}):m[h]=y,t.a=Object(i.hot)(e)(v)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1);n(40);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,l=e[Symbol.iterator]();!(r=(a=l.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==l.return||l.return()}finally{if(o)throw i}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var h=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t,n,r,o;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),t=i.call(this,e),n=p(t),o=function(e,n){t.props.switchType(e)},(r="activate")in n?Object.defineProperty(n,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[r]=o,t}return t=a,(n=[{key:"render",value:function(){var e=this;return o.a.createElement("div",{className:"type-switch"},Object.entries(this.props.types).map((function(t){var n=l(t,2),r=n[0],i=n[1];return o.a.createElement("button",{key:"switch-type-".concat(r),onClick:function(t){return e.activate(r,t)},className:i.active?"active":null},i.title)})))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);t.a=Object(i.hot)(e)(h)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(29);n(22);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),h(p(t=i.call(this,e)),"toggle",(function(){t.setState((function(e){return{open:!e.open}}))})),h(p(t),"hide",(function(e){t.setState({hidden:!0})})),t.state={open:!1,status:e.execution.status,hidden:!1},t}return t=a,(n=[{key:"render",value:function(){return o.a.createElement("div",{className:"execution ".concat(this.state.status," ").concat(this.state.open?"open":"closed"," ").concat(this.state.hidden?" hidden":" visible")},o.a.createElement("div",{className:"execution--summary",onClick:this.toggle},o.a.createElement("div",{className:"timestamp"},new Intl.DateTimeFormat("default",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(1e3*this.props.execution.timestamp)),this.props.execution.is_control?o.a.createElement("div",{className:"control-label"},"New Control"):null,o.a.createElement("div",{className:"status"},this.props.execution.status)),o.a.createElement("div",{className:"execution--details"},this.state.open?this.props.execution.reflections.map((function(e,t){return o.a.createElement(l.a,{reflection:e,key:"reflection-".concat(e.rid)})})):null))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);h(y,"contextType",a.a),t.a=Object(i.hot)(e)(y)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(16);n(20),n(21);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),h(p(t=i.call(this,e)),"hide",(function(e){t.setState({hidden:!0})})),t.state={status:e.reflection.status,hidden:!1},t}return t=a,(n=[{key:"render",value:function(){return o.a.createElement("div",{className:"reflection "+this.state.status+(this.state.hidden?" hidden":" visible")},o.a.createElement("div",{className:"reflection__summary"},o.a.createElement("span",{className:"title"},this.props.reflection.class),o.a.createElement("span",{className:"method"},this.props.reflection.method,"()")),o.a.createElement("div",{className:"reflection__details"},o.a.createElement("div",{className:"io",id:"inputs"},o.a.createElement("h4",null,"Input"),null!=this.props.reflection.inputs?this.props.reflection.inputs.map((function(e,t){return o.a.createElement(l.a,{meta:e,key:"meta-".concat(t)})})):o.a.createElement("strong",{className:"meta-none"},"none")),o.a.createElement("div",{className:"io",id:"output"},o.a.createElement("h4",null,"Output"),null!=this.props.reflection.output?o.a.createElement(l.a,{meta:this.props.reflection.output}):o.a.createElement("strong",{className:"meta-none"},"none"))))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);h(y,"contextType",a.a),t.a=Object(i.hot)(e)(y)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(31);function l(e){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(e,t){return(c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=d(e);if(t){var o=d(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return f(this,n)}}function f(e,t){return!t||"object"!==l(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function d(e){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var p=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}(l,e);var t,n,r,i=s(l);function l(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),(t=i.call(this,e)).state={},t.create_executions(e.controls),t}return t=l,(n=[{key:"create_executions",value:function(e){var t={};e.forEach((function(e){t.hasOwnProperty(e.eid)?t[e.eid].controls.push(e):t[e.eid]={id:e.eid,status:"pass",timestamp:e.time,controls:[e]}}));var n=[];Object.values(t).forEach((function(e){n.push(e)}));var r=n.sort((function(e,t){return e.timestamp<t.timestamp?1:-1}));this.state.executions=r}},{key:"render",value:function(){return o.a.createElement("div",{id:"executions"},this.state.executions.map((function(e,t){return o.a.createElement(a.a,{execution:e,key:e.id})})))}}])&&u(t.prototype,n),r&&u(t,r),l}(o.a.Component);t.a=Object(i.hot)(e)(p)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(32);n(22),n(23);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),h(p(t=i.call(this,e)),"toggle",(function(){t.setState((function(e){return{open:!e.open}}))})),h(p(t),"delete_controls",(function(e,n){n.stopPropagation();var r={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({aid:e})};fetch("/controls/delete",r).then((function(n){return t.hide(e)}))})),h(p(t),"hide",(function(e){t.setState({hidden:!0})})),t.state={open:!1,hidden:!1},t}return t=a,(n=[{key:"render",value:function(){var e=this;return o.a.createElement("div",{className:"execution neutral ".concat(this.state.open?"open":"closed"," ").concat(this.state.hidden?" hidden":" visible")},o.a.createElement("div",{className:"execution--summary",onClick:this.toggle},o.a.createElement("div",{className:"timestamp"},new Intl.DateTimeFormat("default",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(1e3*this.props.execution.timestamp)),o.a.createElement("div",{className:"control-label"},"Control"),o.a.createElement("div",{className:"actions"},o.a.createElement("button",{className:"delete "+(this.context?"enabled":"disabled"),onClick:function(t){return e.delete_controls(e.props.execution.id,t)}},"Delete"))),o.a.createElement("div",{className:"execution--details"},this.state.open?this.props.execution.controls.map((function(e,t){return o.a.createElement(l.a,{control:e,key:"control-".concat(e.rid)})})):null))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);h(y,"contextType",a.a),t.a=Object(i.hot)(e)(y)}).call(this,n(5)(e))},function(e,t,n){"use strict";(function(e){var r=n(0),o=n.n(r),i=n(1),a=n(4),l=n(16);n(20),n(23),n(21);function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function f(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=m(e);if(t){var o=m(this).constructor;n=Reflect.construct(r,arguments,o)}else n=r.apply(this,arguments);return d(this,n)}}function d(e,t){return!t||"object"!==u(t)&&"function"!=typeof t?p(e):t}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}(a,e);var t,n,r,i=f(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),h(p(t=i.call(this,e)),"hide",(function(e){t.setState({hidden:!0})})),h(p(t),"delete",(function(e,n){var r={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({rid:e})};fetch("/control/delete",r).then((function(n){return t.hide(e)}))})),t.state={hidden:!1},t}return t=a,(n=[{key:"render",value:function(){var e=this;return o.a.createElement("div",{className:"reflection neutral"+(this.state.hidden?" hidden":" visible")},o.a.createElement("div",{className:"reflection__summary"},o.a.createElement("span",{className:"title"},this.props.control.class),o.a.createElement("span",{className:"method"},this.props.control.method,"()"),null!=this.props.control.eid?o.a.createElement("div",{className:"actions"},o.a.createElement("button",{className:"delete "+(this.context?"enabled":"disabled"),onClick:function(t){return e.delete(e.props.control.rid,t)}},"Delete")):null),o.a.createElement("div",{className:"reflection__details"},o.a.createElement("div",{className:"io",id:"inputs"},o.a.createElement("h4",null,"Input"),null!=this.props.control.inputs?this.props.control.inputs.map((function(e,t){return o.a.createElement(l.a,{meta:e,key:"meta-".concat(t)})})):o.a.createElement("strong",{className:"meta-none"},"none")),o.a.createElement("div",{className:"io",id:"output"},o.a.createElement("h4",null,"Output"),null!=this.props.control.output?o.a.createElement(l.a,{meta:this.props.control.output}):o.a.createElement("strong",{className:"meta-none"},"none"))))}}])&&c(t.prototype,n),r&&c(t,r),a}(o.a.Component);h(y,"contextType",a.a),t.a=Object(i.hot)(e)(y)}).call(this,n(5)(e))},function(e,t,n){"use strict";n.r(t);var r=n(0),o=n.n(r),i=n(17),a=n.n(i),l=n(24);a.a.render(o.a.createElement(l.a,null),document.getElementById("root"))},function(e,t,n){"use strict";
7
7
  /** @license React v16.13.1
8
8
  * react.production.min.js
9
9
  *
@@ -607,9 +607,9 @@
607
607
  "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
608
608
  },
609
609
  "ini": {
610
- "version": "1.3.5",
611
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
612
- "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
610
+ "version": "1.3.8",
611
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
612
+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
613
613
  "dev": true
614
614
  },
615
615
  "ipaddr.js": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "reflekt-server",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "Serves the UI and writes to the DB.",
5
5
  "main": "server.js",
6
6
  "scripts": {
@@ -56,19 +56,19 @@ var save_db = (db) => {
56
56
  app.post('/controls/delete', (req, res) => {
57
57
 
58
58
  // Get execution ID that controls share.
59
- var exe_id = req.body.exe_id;
59
+ var aid = req.body.aid;
60
60
 
61
61
  // Get database.
62
62
  db = load_db();
63
63
 
64
64
  // Delete controls.
65
65
  for (let [index, control] of db.controls.entries()) {
66
- if (control.exe_id == exe_id) {
66
+ if (control.aid == aid) {
67
67
  console.log("DELETE CONTROL:");
68
68
  console.log(db.controls[index]);
69
69
  db.controls.splice(index, 1);
70
70
  }
71
- if (control.base_id != null && control.base_id == exe_id) {
71
+ if (control.base_id != null && control.base_id == aid) {
72
72
  console.log("DELETE:");
73
73
  console.log(db.controls[index]);
74
74
  db.controls.splice(index, 1);
@@ -86,14 +86,14 @@ app.post('/controls/delete', (req, res) => {
86
86
  app.post('/control/delete', (req, res) => {
87
87
 
88
88
  // Get control ID.
89
- ref_id = req.body.ref_id;
89
+ rid = req.body.rid;
90
90
 
91
91
  // Get database.
92
92
  db = load_db();
93
93
 
94
94
  // Delete control.
95
95
  for (let [index, control] of db.controls.entries()) {
96
- if (control.r == ref_id) {
96
+ if (control.r == rid) {
97
97
  console.log("DELETE CONTROL:")
98
98
  console.log(db.controls[index]);
99
99
  db.controls.splice(index, 1);