@weborigami/language 0.0.59 → 0.0.61

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.
package/main.js CHANGED
@@ -5,12 +5,10 @@ export { default as EventTargetMixin } from "./src/runtime/EventTargetMixin.js";
5
5
  export { default as ExpressionTree } from "./src/runtime/ExpressionTree.js";
6
6
  export { default as HandleExtensionsTransform } from "./src/runtime/HandleExtensionsTransform.js";
7
7
  export { default as ImportModulesMixin } from "./src/runtime/ImportModulesMixin.js";
8
- export { default as InheritScopeMixin } from "./src/runtime/InheritScopeMixin.js";
9
8
  export { default as InvokeFunctionsTransform } from "./src/runtime/InvokeFunctionsTransform.js";
10
9
  export { default as OrigamiFiles } from "./src/runtime/OrigamiFiles.js";
11
10
  export { default as OrigamiTransform } from "./src/runtime/OrigamiTransform.js";
12
11
  export { default as OrigamiTree } from "./src/runtime/OrigamiTree.js";
13
- export { default as Scope } from "./src/runtime/Scope.js";
14
12
  export { default as TreeEvent } from "./src/runtime/TreeEvent.js";
15
13
  export { default as WatchFilesMixin } from "./src/runtime/WatchFilesMixin.js";
16
14
  export { default as evaluate } from "./src/runtime/evaluate.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@weborigami/language",
3
- "version": "0.0.59",
3
+ "version": "0.0.61",
4
4
  "description": "Web Origami expression language compiler and runtime",
5
5
  "type": "module",
6
6
  "main": "./main.js",
@@ -11,8 +11,8 @@
11
11
  "typescript": "5.5.3"
12
12
  },
13
13
  "dependencies": {
14
- "@weborigami/async-tree": "0.0.59",
15
- "@weborigami/types": "0.0.59",
14
+ "@weborigami/async-tree": "0.0.61",
15
+ "@weborigami/types": "0.0.61",
16
16
  "watcher": "2.3.1"
17
17
  },
18
18
  "scripts": {
@@ -138,6 +138,12 @@ functionComposition "function composition"
138
138
  group "parenthetical group"
139
139
  = "(" __ @expr __ closingParen
140
140
 
141
+ guillemetString "guillemet string"
142
+ = '«' chars:guillemetStringChar* '»' { return chars.join(""); }
143
+
144
+ guillemetStringChar
145
+ = !('»' / newLine) @textChar
146
+
141
147
  // A host identifier that may include a colon and port number: `example.com:80`.
142
148
  // This is used as a special case at the head of a path, where we want to
143
149
  // interpret a colon as part of a text identifier.
@@ -148,7 +154,7 @@ identifier "identifier"
148
154
  = chars:identifierChar+ { return chars.join(""); }
149
155
 
150
156
  identifierChar
151
- = [^(){}\[\]<>\-=,/:\`"'\\ →⇒\t\n\r] // No unescaped whitespace or special chars
157
+ = [^(){}\[\]<>\-=,/:\`"'«»\\ →⇒\t\n\r] // No unescaped whitespace or special chars
152
158
  / @'-' !'>' // Accept a hyphen but not in a single arrow combination
153
159
  / escapedChar
154
160
 
@@ -333,6 +339,7 @@ start
333
339
  string "string"
334
340
  = doubleQuoteString
335
341
  / singleQuoteString
342
+ / guillemetString
336
343
 
337
344
  // A top-level document defining a template. This is the same as a template
338
345
  // literal, but can contain backticks at the top level.