Fixed bugs and updated to latest meteor.

This commit is contained in:
Wynne Crisman
2020-09-20 20:36:45 -07:00
parent a20e42e360
commit 54cf6c0f6b
13 changed files with 250 additions and 171 deletions

View File

@@ -16,3 +16,4 @@ notices-for-facebook-graph-api-2
1.4.3-split-account-service-packages
1.5-add-dynamic-import-package
1.7-split-underscore-from-meteor-base
1.8.3-split-jquery-from-blaze

View File

@@ -5,24 +5,23 @@
# but you can also edit it by hand.
meteor-base@1.4.0 # Packages every Meteor app needs to have
mobile-experience@1.0.5 # Packages for a great mobile UX
mongo@1.6.2 # The database Meteor supports right now
mobile-experience@1.1.0 # Packages for a great mobile UX
mongo@1.10.0 # The database Meteor supports right now
blaze-html-templates@1.0.4 # Compile .html files into Meteor Blaze views
reactive-var@1.0.11 # Reactive variable for tracker
reactive-dict@1.3.0 # ???
tracker@1.2.0 # Meteor's client-side reactive programming library
tomwasd:history-polyfill # Adds IE 8/9 support for HTML5 history.
email@1.2.3 # Adds the Meteor/Email package for sending lost password emails
email@2.0.0 # Adds the Meteor/Email package for sending lost password emails
standard-minifier-css@1.5.3 # CSS minifier run for production mode
standard-minifier-js@2.4.1 # JS minifier run for production mode
standard-minifier-css@1.6.0 # CSS minifier run for production mode
standard-minifier-js@2.6.0 # JS minifier run for production mode
es5-shim@4.8.0 # ECMAScript 5 compatibility for older browsers.
poorvavyas:es6-shim
ecmascript@0.12.4 # Enable ECMAScript2015+ syntax in app code
ecmascript@0.14.3 # Enable ECMAScript2015+ syntax in app code
#accounts-ui
#accounts-base
accounts-password@1.5.1
accounts-password@1.6.2
useraccounts:core
useraccounts:unstyled
useraccounts:flow-routing # Configures email flows. Used for AccountsTemplates class.
@@ -61,9 +60,10 @@ juliancwirko:s-alert # Client error/alert handling
jcbernack:reactive-aggregate # Allows us to create a new client collection (from the server) with the contents being an aggregate of server data. Note that aggregation can only be done on the server currently as mini-mongo does not support it.
ostrio:logger
ostrio:loggermongo
dynamic-import@0.5.1
dynamic-import@0.5.2
markdown@1.0.12
wcrisman:jquery-custom-scrollbar
underscore@1.0.10
meteorhacks:aggregate # Allows databaseName.aggragate(pipeline) calls the exact same way you would on the command line in the mongo tool.
#babrahams:constellation # Provides client side debugging when the server is not run in production mode.
jquery

View File

@@ -1 +1 @@
METEOR@1.8.1
METEOR@1.11

View File

@@ -1,6 +1,6 @@
accounts-base@1.4.4
accounts-password@1.5.1
alanning:roles@1.2.16
accounts-base@1.7.0
accounts-password@1.6.2
alanning:roles@1.2.19
aldeed:collection2@2.10.0
aldeed:collection2-core@1.2.0
aldeed:schema-deny@1.1.0
@@ -10,33 +10,33 @@ aldeed:template-extension@4.1.0
allow-deny@1.1.0
arillo:flow-router-helpers@0.5.2
autoupdate@1.6.0
babel-compiler@7.3.4
babel-runtime@1.3.0
babel-compiler@7.5.3
babel-runtime@1.5.0
base64@1.0.12
binary-heap@1.0.11
blaze@2.3.3
blaze@2.3.4
blaze-html-templates@1.1.2
blaze-tools@1.0.10
boilerplate-generator@1.6.0
caching-compiler@1.2.1
boilerplate-generator@1.7.0
caching-compiler@1.2.2
caching-html-compiler@1.1.3
callback-hook@1.1.0
callback-hook@1.3.0
check@1.3.1
coffeescript@1.0.17
ddp@1.4.0
ddp-client@2.3.3
ddp-common@1.4.0
ddp-rate-limiter@1.0.7
ddp-server@2.3.0
ddp-rate-limiter@1.0.9
ddp-server@2.3.2
deps@1.0.12
diff-sequence@1.1.1
dynamic-import@0.5.1
ecmascript@0.12.7
dynamic-import@0.5.2
ecmascript@0.14.3
ecmascript-runtime@0.7.0
ecmascript-runtime-client@0.8.0
ecmascript-runtime-server@0.7.1
ejson@1.1.0
email@1.2.3
ecmascript-runtime-client@0.11.0
ecmascript-runtime-server@0.10.0
ejson@1.1.1
email@2.0.0
es5-shim@4.8.0
fetch@0.1.1
fortawesome:fontawesome@4.7.0
@@ -46,38 +46,38 @@ html-tools@1.0.11
htmljs@1.0.11
http@1.4.2
id-map@1.1.0
inter-process-messaging@0.1.0
inter-process-messaging@0.1.1
jcbernack:reactive-aggregate@0.7.0
jquery@1.11.11
juliancwirko:s-alert@3.2.0
kadira:blaze-layout@2.3.0
kadira:flow-router@2.12.1
launch-screen@1.1.1
launch-screen@1.2.0
livedata@1.0.18
localstorage@1.2.0
logging@1.1.20
markdown@1.0.12
markdown@1.0.14
mdg:validation-error@0.2.0
meteor@1.9.3
meteor-base@1.4.0
meteorhacks:aggregate@1.3.0
meteorhacks:collection-utils@1.2.0
minifier-css@1.4.2
minifier-js@2.4.1
minimongo@1.4.5
mobile-experience@1.0.5
mobile-status-bar@1.0.14
modern-browsers@0.1.4
modules@0.13.0
modules-runtime@0.10.3
momentjs:moment@2.24.0
mongo@1.6.3
minifier-css@1.5.2
minifier-js@2.6.0
minimongo@1.6.0
mobile-experience@1.1.0
mobile-status-bar@1.1.0
modern-browsers@0.1.5
modules@0.15.0
modules-runtime@0.12.0
momentjs:moment@2.27.0
mongo@1.10.0
mongo-decimal@0.1.1
mongo-dev-server@1.1.0
mongo-id@1.0.7
mongo-livedata@1.0.12
npm-bcrypt@0.9.3
npm-mongo@3.1.2
npm-mongo@3.8.0
observe-sequence@1.0.16
ordered-dict@1.1.0
ostrio:logger@2.0.8
@@ -85,7 +85,7 @@ ostrio:loggermongo@2.0.5
poorvavyas:es6-shim@0.21.1
promise@0.11.2
raix:eventemitter@0.1.3
random@1.1.0
random@1.2.0
rate-limit@1.0.9
reactive-dict@1.3.0
reactive-var@1.0.11
@@ -95,13 +95,13 @@ routepolicy@1.1.0
service-configuration@1.0.11
session@1.2.0
sha@1.0.9
socket-stream-client@0.2.2
socket-stream-client@0.3.1
softwarerero:accounts-t9n@1.3.11
spacebars@1.0.15
spacebars-compiler@1.1.3
srp@1.0.12
standard-minifier-css@1.5.3
standard-minifier-js@2.4.1
srp@1.1.0
standard-minifier-css@1.6.0
standard-minifier-js@2.6.0
stylus@2.513.14
templating@1.3.2
templating-compiler@1.3.3
@@ -111,11 +111,11 @@ tomwasd:history-polyfill@0.0.1
tracker@1.2.0
ui@1.0.13
underscore@1.0.10
url@1.2.0
url@1.3.1
useraccounts:core@1.14.2
useraccounts:flow-routing@1.14.2
useraccounts:unstyled@1.14.2
wcrisman:jquery-custom-scrollbar@3.0.0
webapp@1.7.4
webapp@1.9.1
webapp-hashing@1.0.9
zimme:active-route@2.3.2

View File

@@ -2511,7 +2511,7 @@ input[type="button"].btn-block {
color: #bcb95f;
padding: 4px 8px;
}
#salesMain .separatedTableHeader table thead > tr > th.actions .showOnlyComments:hover {
#salesMain .separatedTableHeader table thead > tr > th.actions .showOnlyCommentshover {
color: #fff;
text-shadow: 0px 0px 10px #ff6d1f;
}
@@ -2605,10 +2605,10 @@ input[type="button"].btn-block {
margin-left: 8px;
border-radius: 8px;
}
#salesMain .saleEditor .priceContainer .priceButtons .setDefaultPrice:hover {
#salesMain .saleEditor .priceContainer .priceButtons .setDefaultPricehover {
text-shadow: 0px 0px 6px #00b900;
}
#salesMain .saleEditor .priceContainer .priceButtons .setDefaultPrice:active {
#salesMain .saleEditor .priceContainer .priceButtons .setDefaultPriceactive {
text-shadow: 0px 0px 6px #808080;
}
#salesMain .insertSaleForm .form-group,
@@ -2622,6 +2622,36 @@ input[type="button"].btn-block {
font-variant: normal;
font-weight: 500;
}
#salesMain .insertSaleForm input[name='product'] {
display: table-cell;
width: 100%;
}
#salesMain .insertSaleForm .speechBtn {
display: table-cell;
width: 1px;
}
#salesMain .insertSaleForm .speechLink {
width: 6px;
margin: 3px;
margin-left: 6px;
margin-right: 0;
padding: 6px;
border: 2px solid #000;
border-radius: 4px;
}
#salesMain .insertSaleForm .speechLink:hover {
background-color: #cbcbcb;
border-color: #4b4b4b;
}
#salesMain .insertSaleForm .speechLink:active {
background-color: #b0b0b0;
border-color: #000;
}
#salesMain .insertSaleForm .form-group-line {
display: table;
width: 100%;
white-space: nowrap;
}
#saleDuplicates {
display: table;
content-box: border-box;

View File

@@ -6,7 +6,7 @@ import {SimpleSchema} from 'meteor/aldeed:simple-schema';
const TYPES = ['Retail', "Farmer's Market", "Restaurant", "Mail"];
const FREQUENCIES = ['Daily', 'Weekly'];
Venues = new Mongo.Collection('Venues');
let Venues = new Mongo.Collection('Venues');
let VenuesSchema = new SimpleSchema({
name: {
type: String,

View File

@@ -69,7 +69,7 @@
<template name="MeasureEditor">
<td colspan="2" class="measureEditorTd">
<div class="editorDiv"><label>Name:</label><input name="name" class="form-control" type="text" value="{{name}}" autocomplete="off" required></div>
<div class="editorDiv"><label>Postfix:</label><input name="postfix" class="form-control" type="text" value="{{name}}" autocomplete="off" required></div>
<div class="editorDiv"><label>Postfix:</label><input name="postfix" class="form-control" type="text" value="{{postfix}}" autocomplete="off" required></div>
</td>
<td class="center measureEditorTd actions"><i class="editorApply fa fa-check-square-o fa-lg noselect clickable" aria-hidden="true"></i>&nbsp;/&nbsp;<i class="editorCancel fa fa-times-circle fa-lg noselect clickable" aria-hidden="true"></i></td>
</template>

View File

@@ -38,7 +38,7 @@ Template.Production.onCreated(function() {
query.deletedAt = {$exists: false};
}
Template.Production.batchesSubscription = Meteor.subscribe("batches", query, sort, QUERY_LIMIT, Session.get(PREFIX + 'skipCount'));
Template.Production.batchesSubscription = Meteor.subscribe("batches", query, sort, Session.get(PREFIX + "queryLimit"), Session.get(PREFIX + 'skipCount'));
Session.set(PREFIX + 'batchCount', Meteor.call('getBatchCount', Session.get(PREFIX + 'searchQuery')));
});
});
@@ -463,4 +463,4 @@ Template.BatchDateRangeSearch.dateChanged = function(isStart, event, template) {
Session.set(PREFIX + 'searchFields', searchFields);
Session.set(PREFIX + 'skipCount', 0); //Reset the paging of the results.
Session.set(PREFIX + "queryLimit", QUERY_LIMIT); //Reset the query limit in case we loaded more
};
};

View File

@@ -113,7 +113,7 @@
</div>
<div class="form-group">
<label class='control-label'>Product</label>
<input name="product" class="form-control" type="text" required/>
<div class="form-group-line"><input name="product" class="form-control" type="text" required/><span class="spacer"></span><span class='speechBtn'><a class="speechLink"><i class="fa fa-microphone" aria-hidden="true"></i></a></span></div>
</div>
<div class="form-group">
<label class='control-label'>Venue</label>

View File

@@ -1,159 +1,183 @@
#salesMain
display: table
content-box: border-box
padding: 10px 20px
height: 100%
width: 100%
text-align: left
display table
content-box border-box
padding 10px 20px
height 100%
width 100%
text-align left
.controls
text-align: left
display: table
width: 100%
text-align left
display table
width 100%
.pageControls
padding: 4px 8px
margin: 4px 8px
display: table-cell
width: 240px
padding 4px 8px
margin 4px 8px
display table-cell
width 240px
.tableControls
text-align: right
padding: 4px 8px
margin: 4px 12px 4px 8px
display: table-cell
text-align right
padding 4px 8px
margin 4px 12px 4px 8px
display table-cell
.table
table-layout: fixed
min-width: 100%
table-layout fixed
min-width 100%
thead, tbody
> tr
> .amount
width: 90px
min-width: 90px
width 90px
min-width 90px
> .product
width: 100%
min-width: 140px
width 100%
min-width 140px
> .price
width: 140px
min-width: 140px
width 140px
min-width 140px
> .measure
width: 100px
min-width: 100px
width 100px
min-width 100px
> .saleDate
width: 150px
min-width: 150px
width 150px
min-width 150px
> .createdDate
width: 100px
min-width: 100px
width 100px
min-width 100px
> .venue
width: 160px
min-width: 160px
width 160px
min-width 160px
> .actions
width: 90px
min-width: 90px
width 90px
min-width 90px
.separatedTableHeader
table
thead
> tr
> th.actions
.newSaleButton
padding: 0 12px
padding 0 12px
.fa-plus-circle
display: inline-block
display inline-block
.fa-times-circle
display: none
display none
.newSaleButton.active
background-color: #fb557b
color: black
background-color #fb557b
color black
.fa-times-circle
display: inline-block
display inline-block
.fa-plus-circle
display: none
display none
.showOnlyComments
color: #bcb95f
padding: 4px 8px
.showOnlyComments:hover
color: white
text-shadow: 0px 0px 10px #ff6d1f
color #bcb95f
padding 4px 8px
.showOnlyCommentshover
color white
text-shadow 0px 0px 10px #ff6d1f
.showOnlyComments.on
color: white
color white
> th.saleDate
input
width: 130px
width 130px
.listRow
display: table-row
display table-row
.listCell
display: table-cell
position: relative
height: 100%
width: 100%
display table-cell
position relative
height 100%
width 100%
.tableContainer
position: absolute
top: 0
bottom: 0
left: 0
right: 0
width: auto
height: auto
border: 0
font-size: 12.5px
overflow-y: scroll
position absolute
top 0
bottom 0
left 0
right 0
width auto
height auto
border 0
font-size 12.5px
overflow-y scroll
label
font-size: 10px
font-weight: 800
font-size 10px
font-weight 800
table
thead
visibility: hidden
display: none
visibility hidden
display none
.saleRemove
color: red
margin-left: 8px
color red
margin-left 8px
.saleEdit
color: darkblue
margin-right: 8px
color darkblue
margin-right 8px
.editorApply
color: green
color green
.editorCancel
color: red
color red
.saleDate
text-align: left
text-align left
.createdDate
text-align: left
text-align left
.editComment
color: grey
color grey
.hasComment
color: black
color black
.actionEdit
margin-right: 6px
color: #44F
margin-right 6px
color #44F
.saleEditor
.heading
font-size: 2em
font-family: verdana, arial, helvetica, sans-serif
text-transform: uppercase
font-weight: 800
margin: 6px 0 14px 0
font-size 2em
font-family verdana, arial, helvetica, sans-serif
text-transform uppercase
font-weight 800
margin 6px 0 14px 0
.priceContainer
display: table
width: 100%
display table
width 100%
.price
display: table-cell
padding-right: 10px
display table-cell
padding-right 10px
.priceButtons
display: table-cell
width: 1.5em
display table-cell
width 1.5em
.setDefaultPrice
font-size: 1.5em
padding: 6px 8px
margin-left: 8px
border-radius: 8px
.setDefaultPrice:hover
text-shadow: 0px 0px 6px #00b900
.setDefaultPrice:active
text-shadow: 0px 0px 6px grey
font-size 1.5em
padding 6px 8px
margin-left 8px
border-radius 8px
.setDefaultPricehover
text-shadow 0px 0px 6px #00b900
.setDefaultPriceactive
text-shadow 0px 0px 6px grey
.insertSaleForm
.form-group, label
text-align: left
text-align left
.formGroupHeading
font-size: 1.6em
font-family: "Arial Black", "Arial Bold", Gadget, sans-serif
font-style: normal
font-variant: normal
font-weight: 500
font-size 1.6em
font-family "Arial Black", "Arial Bold", Gadget, sans-serif
font-style normal
font-variant normal
font-weight 500
input[name='product']
display table-cell
width 100%
.speechBtn
display table-cell
width 1px
.speechLink
width 6px
margin 3px
margin-left 6px
margin-right 0
padding 6px
border 2px solid black
border-radius 4px
.speechLink:hover
background-color #cbcbcb
border-color #4b4b4b
.speechLink:active
background-color #b0b0b0
border-color #000000
.form-group-line
display table
width 100%
white-space nowrap

View File

@@ -457,6 +457,30 @@ Template.InsertSale.events({
}
}
});
},
"click .speechLink": function(event, template) {
try {
let SpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition;
let r = new SpeechRecognition();
r.lang='en-US';
r.interimResult = false;
r.maxAlternatives = 0;
r.start();
r.onresult = function(event) {
let product = template.$('input[name="product"]');
product.val(event.results[0][0].transcript);
let combo = product.data("de.combo");
combo.show();
combo.filter();
//Count the number of leaf nodes that are visible.
combo.$list.find('li.visible[role="leaf"]').length
}
}
catch(e) {
console.error(e);
}
}
});
Template.InsertSale.helpers({

16
package-lock.json generated
View File

@@ -4,17 +4,17 @@
"lockfileVersion": 1,
"dependencies": {
"@babel/runtime": {
"version": "7.5.5",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.5.5.tgz",
"integrity": "sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ==",
"version": "7.9.2",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz",
"integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==",
"requires": {
"regenerator-runtime": "^0.13.2"
"regenerator-runtime": "^0.13.4"
},
"dependencies": {
"regenerator-runtime": {
"version": "0.13.3",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
"integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw=="
"version": "0.13.5",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz",
"integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA=="
}
}
},
@@ -853,7 +853,7 @@
"integrity": "sha512-J9X76xnncMw+wIqb15HeWfPMqPwYxSpPY8yWPJ7rAZN/ZDzFkjCSZObryCyUe8zbrVRNiuCnIeQteCzMn7GnWw==",
"requires": {
"canvg": "1.5.3",
"file-saver": "github:eligrey/FileSaver.js#e865e37af9f9947ddcced76b549e27dc45c1cb2e",
"file-saver": "github:eligrey/FileSaver.js#1.3.8",
"html2canvas": "1.0.0-alpha.12",
"omggif": "1.0.7",
"promise-polyfill": "8.1.0",

View File

@@ -6,7 +6,7 @@
"build": "npm install --product && meteor build --architecture os.linux.x86_64 --server-only ../"
},
"dependencies": {
"@babel/runtime": "^7.5.5",
"@babel/runtime": "^7.9.2",
"babel-runtime": "^6.18.0",
"csv-parse": "^4.4.6",
"d3": "^4.4.2",
@@ -24,6 +24,6 @@
"pure-svg-code": "^1.0.6",
"qrcode-svg": "^1.0.0",
"simpl-schema": "latest",
"sweetalert2": "^6.3.8"
"sweetalert2": "^10.2.0"
}
}